From 0e57f0c510b7d7eb688695359048a1f0a585e26a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 24 Aug 2006 12:32:52 +0000 Subject: Moving project to sourceforge. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@1 2592e710-e01b-42a5-8df0-11608a6cc53d --- Artistic | 125 ++ ChangeLog | 1457 ++++++++++++++++++ Configure | 3892 +++++++++++++++++++++++++++++++++++++++++++++++ Credits | 112 ++ Jmakefile | 35 + Known_bugs | 14 + MANIFEST | 612 ++++++++ Makefile.SH | 218 +++ README | 138 ++ Wishlist | 60 + bin/Jmakefile | 45 + bin/Makefile.SH | 216 +++ bin/manicheck.SH | 82 + bin/manicheck.man | 51 + bin/manilist.SH | 484 ++++++ bin/manilist.man | 332 ++++ bin/packinit.SH | 447 ++++++ bin/packinit.man | 148 ++ bin/perload | 648 ++++++++ dist.man | 317 ++++ install.SH | 216 +++ jmake/Jmakefile | 51 + jmake/Makefile.SH | 300 ++++ jmake/NOTES | 189 +++ jmake/README | 70 + jmake/bindex.SH | 185 +++ jmake/files/Jmake.rules | 1801 ++++++++++++++++++++++ jmake/files/Jmake.tmpl | 253 +++ jmake/fixcpp.SH | 183 +++ jmake/jmake.SH | 526 +++++++ jmake/jmake.man | 491 ++++++ jmake/jmkmf.SH | 106 ++ jmake/jmkmf.man | 80 + kit/Jmakefile | 49 + kit/Makefile.SH | 235 +++ kit/README | 35 + kit/kitpost.SH | 237 +++ kit/kitpost.man | 89 ++ kit/kitsend.SH | 192 +++ kit/kitsend.man | 42 + kit/makeSH | 76 + kit/makeSH.man | 46 + kit/makedist.SH | 460 ++++++ kit/makedist.man | 147 ++ kit/manifake.SH | 51 + kit/manifake.man | 46 + lib/C/Jmakefile | 20 + lib/C/Makefile.SH | 188 +++ lib/C/fake/Jmakefile | 29 + lib/C/fake/Makefile.SH | 156 ++ lib/C/fake/dup2.C | 78 + lib/C/fake/getopt.C | 133 ++ lib/C/fake/rename.C | 45 + lib/C/fake/scandir.C | 131 ++ lib/C/fake/setsid.C | 64 + lib/Jmakefile | 57 + lib/Makefile.SH | 246 +++ lib/errnolist.a | 52 + lib/errnolist.mk | 42 + lib/errnolist.sh | 44 + lib/makedepend.sh | 169 ++ lib/makedir.sh | 86 ++ mcon/INTRO | 109 ++ mcon/Jmakefile | 93 ++ mcon/Makefile.SH | 378 +++++ mcon/NOTES | 174 +++ mcon/README | 24 + mcon/U/AAAAA.U | 46 + mcon/U/Begin.U | 39 + mcon/U/Checkcc.U | 135 ++ mcon/U/Chk_MANI.U | 88 ++ mcon/U/Chk_whoami.U | 25 + mcon/U/Compile.U | 63 + mcon/U/Config_h.U | 114 ++ mcon/U/Config_sh.U | 110 ++ mcon/U/Configdir.U | 28 + mcon/U/Cppsym.U | 286 ++++ mcon/U/Cross.U | 349 +++++ mcon/U/Csym.U | 97 ++ mcon/U/End.U | 27 + mcon/U/Extract.U | 105 ++ mcon/U/Extractall.U | 51 + mcon/U/Filexp.U | 69 + mcon/U/Findhdr.U | 126 ++ mcon/U/Finish.U | 141 ++ mcon/U/Getfile.U | 339 +++++ mcon/U/Guess.U | 228 +++ mcon/U/Head.U | 282 ++++ mcon/U/Inhdr.U | 77 + mcon/U/Init.U | 81 + mcon/U/Inlibc.U | 64 + mcon/U/Instruct.U | 116 ++ mcon/U/Loc.U | 381 +++++ mcon/U/Loc_sed.U | 33 + mcon/U/Magic_h.U | 43 + mcon/U/MailAuthor.U | 192 +++ mcon/U/MailList.U | 82 + mcon/U/Mkdirp.U | 51 + mcon/U/Mksymlinks.U | 90 ++ mcon/U/Myinit.U | 26 + mcon/U/Myread.U | 199 +++ mcon/U/Nothing.U | 19 + mcon/U/Null.U | 20 + mcon/U/Obsol_h.U | 28 + mcon/U/Obsol_sh.U | 27 + mcon/U/Oldconfig.U | 687 +++++++++ mcon/U/Oldsym.U | 66 + mcon/U/Options.U | 363 +++++ mcon/U/Prefixit.U | 68 + mcon/U/Prefixup.U | 38 + mcon/U/Rcs.U | 34 + mcon/U/Setvar.U | 50 + mcon/U/Signal.U | 271 ++++ mcon/U/Tr.U | 103 ++ mcon/U/Typedef.U | 63 + mcon/U/Unix.U | 64 + mcon/U/Warn.U | 57 + mcon/U/Warn_v7EXT.U | 34 + mcon/U/Warn_v7ND.U | 33 + mcon/U/Whoa.U | 51 + mcon/U/abortsig.U | 79 + mcon/U/active.U | 50 + mcon/U/afs.U | 55 + mcon/U/alignbytes.U | 64 + mcon/U/archlib.U | 125 ++ mcon/U/archname.U | 76 + mcon/U/baserev.U | 22 + mcon/U/basicshell.U | 47 + mcon/U/bin.U | 88 ++ mcon/U/bitpbyte.U | 74 + mcon/U/byteorder.U | 99 ++ mcon/U/cc.U | 58 + mcon/U/ccflags.U | 403 +++++ mcon/U/cf_email.U | 58 + mcon/U/cf_name.U | 72 + mcon/U/cf_who.U | 62 + mcon/U/charorder.U | 143 ++ mcon/U/charsize.U | 58 + mcon/U/contains.U | 43 + mcon/U/cpp_stuff.U | 157 ++ mcon/U/cpp_trad.U | 41 + mcon/U/cppfilecom.U | 204 +++ mcon/U/cppstdin.U | 249 +++ mcon/U/d_NOFILE.U | 189 +++ mcon/U/d_NeWS.U | 101 ++ mcon/U/d_PORTAR.U | 79 + mcon/U/d_SHM_MAC.U | 141 ++ mcon/U/d_access.U | 74 + mcon/U/d_alarm.U | 33 + mcon/U/d_attribut.U | 64 + mcon/U/d_bcmp.U | 44 + mcon/U/d_bcopy.U | 44 + mcon/U/d_brokstat.U | 75 + mcon/U/d_bsdjmp.U | 86 ++ mcon/U/d_byacc.U | 33 + mcon/U/d_bzero.U | 44 + mcon/U/d_casti32.U | 87 ++ mcon/U/d_castneg.U | 143 ++ mcon/U/d_cbrt.U | 32 + mcon/U/d_charsprf.U | 52 + mcon/U/d_chown.U | 33 + mcon/U/d_chroot.U | 33 + mcon/U/d_chsize.U | 32 + mcon/U/d_ckeypad.U | 54 + mcon/U/d_closedir.U | 107 ++ mcon/U/d_const.U | 66 + mcon/U/d_crypt.U | 76 + mcon/U/d_csh.U | 62 + mcon/U/d_ctermid.U | 31 + mcon/U/d_cuserid.U | 34 + mcon/U/d_dbl_dig.U | 61 + mcon/U/d_debugging.U | 42 + mcon/U/d_difftime.U | 33 + mcon/U/d_dlerror.U | 46 + mcon/U/d_dlopen.U | 45 + mcon/U/d_dosuid.U | 169 ++ mcon/U/d_drem.U | 35 + mcon/U/d_dup2.U | 31 + mcon/U/d_eofpipe.U | 93 ++ mcon/U/d_euc2jis.U | 32 + mcon/U/d_fchmod.U | 32 + mcon/U/d_fchown.U | 32 + mcon/U/d_fcntl.U | 31 + mcon/U/d_fd_set.U | 138 ++ mcon/U/d_ffs.U | 33 + mcon/U/d_fgetpos.U | 31 + mcon/U/d_flexfnam.U | 77 + mcon/U/d_flock.U | 31 + mcon/U/d_fmod.U | 34 + mcon/U/d_fork.U | 33 + mcon/U/d_fsetpos.U | 31 + mcon/U/d_ftime.U | 78 + mcon/U/d_ftrncate.U | 31 + mcon/U/d_gconvert.U | 147 ++ mcon/U/d_getgrps.U | 33 + mcon/U/d_gethbynm.U | 32 + mcon/U/d_gethent.U | 31 + mcon/U/d_gethid.U | 31 + mcon/U/d_gethname.U | 287 ++++ mcon/U/d_getlogin.U | 34 + mcon/U/d_getopt.U | 31 + mcon/U/d_getpagsz.U | 104 ++ mcon/U/d_getpgid.U | 34 + mcon/U/d_getpgrp.U | 108 ++ mcon/U/d_getpgrp2.U | 32 + mcon/U/d_getppid.U | 34 + mcon/U/d_getprior.U | 31 + mcon/U/d_getpwent.U | 40 + mcon/U/d_getwd.U | 41 + mcon/U/d_gnulibc.U | 98 ++ mcon/U/d_group.U | 23 + mcon/U/d_havetlib.U | 125 ++ mcon/U/d_hidnet.U | 68 + mcon/U/d_htonl.U | 88 ++ mcon/U/d_inetaton.U | 34 + mcon/U/d_inetd.U | 70 + mcon/U/d_internet.U | 52 + mcon/U/d_isascii.U | 57 + mcon/U/d_itimer.U | 32 + mcon/U/d_keepsig.U | 81 + mcon/U/d_killpg.U | 33 + mcon/U/d_link.U | 31 + mcon/U/d_linuxstd.U | 55 + mcon/U/d_locconv.U | 33 + mcon/U/d_lockf.U | 33 + mcon/U/d_lstat.U | 31 + mcon/U/d_mblen.U | 34 + mcon/U/d_mbstowcs.U | 32 + mcon/U/d_mbtowc.U | 32 + mcon/U/d_memalign.U | 29 + mcon/U/d_memccpy.U | 33 + mcon/U/d_memchr.U | 32 + mcon/U/d_memcmp.U | 35 + mcon/U/d_memcpy.U | 35 + mcon/U/d_memmove.U | 34 + mcon/U/d_memset.U | 35 + mcon/U/d_mkdir.U | 33 + mcon/U/d_mkfifo.U | 36 + mcon/U/d_mktime.U | 33 + mcon/U/d_mmap.U | 31 + mcon/U/d_msem_lck.U | 28 + mcon/U/d_msg.U | 45 + mcon/U/d_msgctl.U | 31 + mcon/U/d_msgget.U | 31 + mcon/U/d_msgrcv.U | 31 + mcon/U/d_msgsnd.U | 31 + mcon/U/d_msync.U | 31 + mcon/U/d_munmap.U | 31 + mcon/U/d_newsadm.U | 72 + mcon/U/d_nice.U | 33 + mcon/U/d_nolnbuf.U | 99 ++ mcon/U/d_normsig.U | 57 + mcon/U/d_open3.U | 90 ++ mcon/U/d_passwd.U | 23 + mcon/U/d_pathconf.U | 55 + mcon/U/d_pause.U | 34 + mcon/U/d_perror.U | 44 + mcon/U/d_pidcheck.U | 75 + mcon/U/d_pipe.U | 34 + mcon/U/d_poll.U | 36 + mcon/U/d_popen.U | 31 + mcon/U/d_portable.U | 71 + mcon/U/d_pread.U | 29 + mcon/U/d_preadv.U | 30 + mcon/U/d_psignal.U | 31 + mcon/U/d_pwrite.U | 29 + mcon/U/d_pwritev.U | 30 + mcon/U/d_raster.U | 57 + mcon/U/d_rdchk.U | 33 + mcon/U/d_readdir.U | 79 + mcon/U/d_readlink.U | 34 + mcon/U/d_regcmp.U | 80 + mcon/U/d_rename.U | 33 + mcon/U/d_rmdir.U | 32 + mcon/U/d_rusage.U | 36 + mcon/U/d_safebcpy.U | 124 ++ mcon/U/d_safemcpy.U | 127 ++ mcon/U/d_sanemcmp.U | 88 ++ mcon/U/d_sbrk.U | 31 + mcon/U/d_scandir.U | 31 + mcon/U/d_scannl.U | 74 + mcon/U/d_scorfl.U | 58 + mcon/U/d_select.U | 33 + mcon/U/d_sem.U | 45 + mcon/U/d_semctl.U | 31 + mcon/U/d_semget.U | 31 + mcon/U/d_semop.U | 31 + mcon/U/d_setegid.U | 32 + mcon/U/d_seteuid.U | 32 + mcon/U/d_setgrps.U | 33 + mcon/U/d_setlnbuf.U | 36 + mcon/U/d_setlocale.U | 33 + mcon/U/d_setpgid.U | 37 + mcon/U/d_setpgrp.U | 116 ++ mcon/U/d_setpgrp2.U | 32 + mcon/U/d_setprior.U | 31 + mcon/U/d_setregid.U | 46 + mcon/U/d_setreuid.U | 46 + mcon/U/d_setrgid.U | 32 + mcon/U/d_setruid.U | 32 + mcon/U/d_setsid.U | 34 + mcon/U/d_sgndchr.U | 59 + mcon/U/d_shm.U | 45 + mcon/U/d_shmat.U | 93 ++ mcon/U/d_shmctl.U | 31 + mcon/U/d_shmdt.U | 31 + mcon/U/d_shmget.U | 31 + mcon/U/d_sigaction.U | 61 + mcon/U/d_sigblock.U | 31 + mcon/U/d_sighold.U | 31 + mcon/U/d_siglist.U | 39 + mcon/U/d_sigsetjmp.U | 105 ++ mcon/U/d_sigsetmk.U | 41 + mcon/U/d_sigvec.U | 79 + mcon/U/d_sjis2jis.U | 32 + mcon/U/d_socket.U | 123 ++ mcon/U/d_speedopt.U | 62 + mcon/U/d_stat.U | 31 + mcon/U/d_statblks.U | 46 + mcon/U/d_stdstdio.U | 325 ++++ mcon/U/d_strccmp.U | 38 + mcon/U/d_strchr.U | 95 ++ mcon/U/d_strcoll.U | 33 + mcon/U/d_strcspn.U | 32 + mcon/U/d_strctcpy.U | 53 + mcon/U/d_strdup.U | 32 + mcon/U/d_strerror.U | 117 ++ mcon/U/d_strftime.U | 31 + mcon/U/d_strstr.U | 31 + mcon/U/d_strtod.U | 34 + mcon/U/d_strtok.U | 35 + mcon/U/d_strtol.U | 32 + mcon/U/d_strtoul.U | 34 + mcon/U/d_strxfrm.U | 33 + mcon/U/d_su_chown.U | 41 + mcon/U/d_symlink.U | 32 + mcon/U/d_syscall.U | 31 + mcon/U/d_sysconf.U | 34 + mcon/U/d_syslog.U | 44 + mcon/U/d_system.U | 31 + mcon/U/d_table.U | 34 + mcon/U/d_tcgtpgrp.U | 34 + mcon/U/d_tcstpgrp.U | 34 + mcon/U/d_time.U | 66 + mcon/U/d_times.U | 74 + mcon/U/d_tminsys.U | 41 + mcon/U/d_truncate.U | 31 + mcon/U/d_tzmin.U | 53 + mcon/U/d_tzname.U | 42 + mcon/U/d_ulimit.U | 31 + mcon/U/d_umask.U | 34 + mcon/U/d_usendir.U | 79 + mcon/U/d_usleep.U | 31 + mcon/U/d_uwait.U | 123 ++ mcon/U/d_vfork.U | 91 ++ mcon/U/d_voidsig.U | 89 ++ mcon/U/d_volatile.U | 74 + mcon/U/d_vprintf.U | 81 + mcon/U/d_wait3.U | 31 + mcon/U/d_wait4.U | 30 + mcon/U/d_waitpid.U | 31 + mcon/U/d_wcstombs.U | 32 + mcon/U/d_wctomb.U | 34 + mcon/U/d_wifstat.U | 87 ++ mcon/U/d_xdrs.U | 42 + mcon/U/defeditor.U | 45 + mcon/U/doublesize.U | 58 + mcon/U/ebcdic.U | 58 + mcon/U/errnolist.U | 106 ++ mcon/U/etc.U | 42 + mcon/U/filexp.U | 30 + mcon/U/floatsize.U | 58 + mcon/U/fpostype.U | 39 + mcon/U/fpu.U | 73 + mcon/U/gccvers.U | 117 ++ mcon/U/gidtype.U | 61 + mcon/U/groupstype.U | 63 + mcon/U/h_fcntl.U | 23 + mcon/U/h_sysfile.U | 23 + mcon/U/i_arpainet.U | 31 + mcon/U/i_db.U | 146 ++ mcon/U/i_dbm.U | 79 + mcon/U/i_dirent.U | 146 ++ mcon/U/i_dld.U | 34 + mcon/U/i_dlfcn.U | 34 + mcon/U/i_fcntl.U | 61 + mcon/U/i_float.U | 35 + mcon/U/i_gdbm.U | 53 + mcon/U/i_grp.U | 31 + mcon/U/i_inttypes.U | 35 + mcon/U/i_limits.U | 33 + mcon/U/i_locale.U | 32 + mcon/U/i_malloc.U | 31 + mcon/U/i_math.U | 34 + mcon/U/i_memory.U | 65 + mcon/U/i_ndbm.U | 53 + mcon/U/i_neterrno.U | 65 + mcon/U/i_niin.U | 45 + mcon/U/i_pwd.U | 162 ++ mcon/U/i_regex.U | 35 + mcon/U/i_sfio.U | 32 + mcon/U/i_stddef.U | 32 + mcon/U/i_stdlib.U | 32 + mcon/U/i_string.U | 62 + mcon/U/i_sysdir.U | 34 + mcon/U/i_sysfile.U | 60 + mcon/U/i_sysioctl.U | 202 +++ mcon/U/i_sysmman.U | 34 + mcon/U/i_sysndir.U | 31 + mcon/U/i_sysparam.U | 31 + mcon/U/i_sysresrc.U | 34 + mcon/U/i_sysselct.U | 39 + mcon/U/i_syssock.U | 32 + mcon/U/i_sysstat.U | 32 + mcon/U/i_systable.U | 32 + mcon/U/i_systimeb.U | 55 + mcon/U/i_systimes.U | 31 + mcon/U/i_systwgcf.U | 31 + mcon/U/i_systypes.U | 34 + mcon/U/i_sysun.U | 35 + mcon/U/i_syswait.U | 34 + mcon/U/i_termio.U | 123 ++ mcon/U/i_time.U | 171 +++ mcon/U/i_unistd.U | 31 + mcon/U/i_utime.U | 31 + mcon/U/i_values.U | 35 + mcon/U/i_varhdr.U | 164 ++ mcon/U/i_vfork.U | 40 + mcon/U/i_whoami.U | 35 + mcon/U/inc.U | 39 + mcon/U/install.U | 194 +++ mcon/U/intsize.U | 124 ++ mcon/U/ipc.U | 171 +++ mcon/U/issymlink.U | 85 ++ mcon/U/kernel.U | 63 + mcon/U/lex.U | 67 + mcon/U/lib.U | 54 + mcon/U/libc.U | 405 +++++ mcon/U/libdbm.U | 47 + mcon/U/libflex.U | 65 + mcon/U/libnlist.U | 49 + mcon/U/libnm.U | 45 + mcon/U/libpth.U | 132 ++ mcon/U/libs.U | 242 +++ mcon/U/libyacc.U | 64 + mcon/U/lintlib.U | 38 + mcon/U/lns.U | 41 + mcon/U/locdist.U | 174 +++ mcon/U/longsize.U | 24 + mcon/U/lseektype.U | 40 + mcon/U/maildir.U | 41 + mcon/U/mailer.U | 61 + mcon/U/mailfile.U | 56 + mcon/U/make.U | 60 + mcon/U/mallocsrc.U | 171 +++ mcon/U/man1dir.U | 147 ++ mcon/U/man3dir.U | 158 ++ mcon/U/manfmt.U | 118 ++ mcon/U/mansrc.U | 150 ++ mcon/U/mboxchar.U | 70 + mcon/U/mkdep.U | 268 ++++ mcon/U/models.U | 214 +++ mcon/U/modetype.U | 40 + mcon/U/myhostname.U | 284 ++++ mcon/U/n.U | 45 + mcon/U/nametype.U | 134 ++ mcon/U/nblock_io.U | 254 ++++ mcon/U/newslevel.U | 53 + mcon/U/newslib.U | 61 + mcon/U/newsspool.U | 52 + mcon/U/nis.U | 168 ++ mcon/U/nlist_pfx.U | 135 ++ mcon/U/orderlib.U | 95 ++ mcon/U/orgname.U | 65 + mcon/U/packadmin.U | 33 + mcon/U/package.U | 56 + mcon/U/pager.U | 59 + mcon/U/patchlevel.U | 35 + mcon/U/perlpath.U | 56 + mcon/U/pidtype.U | 39 + mcon/U/pkgsrc.U | 26 + mcon/U/prefix.U | 80 + mcon/U/prefshell.U | 60 + mcon/U/privlib.U | 96 ++ mcon/U/prototype.U | 118 ++ mcon/U/ptrsize.U | 58 + mcon/U/randbits.U | 83 + mcon/U/randfunc.U | 164 ++ mcon/U/rcs_branch.U | 43 + mcon/U/registers.U | 103 ++ mcon/U/rootid.U | 35 + mcon/U/sbrksmart.U | 85 ++ mcon/U/sbrktype.U | 44 + mcon/U/scriptdir.U | 110 ++ mcon/U/selecttype.U | 109 ++ mcon/U/sh.U | 92 ++ mcon/U/shm_for.U | 118 ++ mcon/U/sig_name.U | 157 ++ mcon/U/sitearch.U | 94 ++ mcon/U/sitelib.U | 97 ++ mcon/U/sizetype.U | 40 + mcon/U/so.U | 50 + mcon/U/sockopt.U | 88 ++ mcon/U/spitshell.U | 107 ++ mcon/U/src.U | 92 ++ mcon/U/ssizetype.U | 91 ++ mcon/U/startperl.U | 95 ++ mcon/U/startsh.U | 50 + mcon/U/stdchar.U | 40 + mcon/U/sunscanf.U | 55 + mcon/U/sysman.U | 50 + mcon/U/trnl.U | 59 + mcon/U/uidtype.U | 57 + mcon/U/usenm.U | 144 ++ mcon/U/usesocks.U | 46 + mcon/U/usrinc.U | 93 ++ mcon/U/vaproto.U | 65 + mcon/U/voidflags.U | 168 ++ mcon/U/warnflags.U | 55 + mcon/U/yacc.U | 90 ++ mcon/configure | 144 ++ mcon/files/Internal.U | 20 + mcon/files/README | 6 + mcon/files/d_function.U | 31 + mcon/files/dir.U | 47 + mcon/files/file.U | 47 + mcon/files/i_include.U | 32 + mcon/files/keyword.U | 54 + mcon/files/locate.U | 47 + mcon/files/question.U | 58 + mcon/files/rcshead.U | 15 + mcon/files/shell.U | 68 + mcon/files/type.U | 47 + mcon/makegloss.SH | 217 +++ mcon/man/Jmakefile | 24 + mcon/man/Makefile.SH | 167 ++ mcon/man/mconfig.SH | 2103 +++++++++++++++++++++++++ mcon/man/mlint.SH | 559 +++++++ mcon/man/mxref.SH | 133 ++ mcon/mconfig.SH | 182 +++ mcon/mlint.SH | 136 ++ mcon/mxref.SH | 146 ++ mcon/pl/common.pl | 289 ++++ mcon/pl/configure.pl | 245 +++ mcon/pl/cosmetic.pl | 114 ++ mcon/pl/depend.pl | 138 ++ mcon/pl/eval.pl | 300 ++++ mcon/pl/extract.pl | 109 ++ mcon/pl/files.pl | 109 ++ mcon/pl/gensym.pl | 22 + mcon/pl/init.pl | 55 + mcon/pl/lint.pl | 1411 +++++++++++++++++ mcon/pl/locate.pl | 153 ++ mcon/pl/makefile.pl | 176 +++ mcon/pl/obsolete.pl | 103 ++ mcon/pl/order.pl | 42 + mcon/pl/tsort.pl | 166 ++ mcon/pl/wanted.pl | 263 ++++ mcon/pl/xref.pl | 67 + mcon/pl/xwant.pl | 149 ++ pat/Jmakefile | 68 + pat/Makefile.SH | 269 ++++ pat/README | 120 ++ pat/pat.SH | 154 ++ pat/pat.man | 513 +++++++ pat/patbase.SH | 122 ++ pat/patchlevel.h | 34 + pat/patcil.SH | 541 +++++++ pat/patclean.SH | 185 +++ pat/patcol.SH | 235 +++ pat/patdiff.SH | 236 +++ pat/patftp.SH | 118 ++ pat/patindex.SH | 66 + pat/patlog.SH | 390 +++++ pat/patmake.SH | 413 +++++ pat/patname.SH | 175 +++ pat/patnotify.SH | 232 +++ pat/patpost.SH | 179 +++ pat/patsend.SH | 218 +++ pat/patsnap.SH | 124 ++ patchlevel.h | 4 + pl/comment.pl | 46 + pl/copyright.pl | 71 + pl/editor.pl | 23 + pl/fullname.pl | 49 + pl/listedit.pl | 36 + pl/logname.pl | 24 + pl/makedir.pl | 29 + pl/manifake.pl | 42 + pl/newer.pl | 78 + pl/package.pl | 40 + pl/patseq.pl | 27 + pl/profile.pl | 73 + pl/rangeargs.pl | 48 + pl/rcsargs.pl | 60 + pl/snapshot.pl | 28 + pl/tilde.pl | 25 + pl/users.pl | 48 + 598 files changed, 63879 insertions(+) create mode 100644 Artistic create mode 100644 ChangeLog create mode 100755 Configure create mode 100644 Credits create mode 100644 Jmakefile create mode 100644 Known_bugs create mode 100644 MANIFEST create mode 100755 Makefile.SH create mode 100644 README create mode 100644 Wishlist create mode 100644 bin/Jmakefile create mode 100755 bin/Makefile.SH create mode 100755 bin/manicheck.SH create mode 100644 bin/manicheck.man create mode 100755 bin/manilist.SH create mode 100644 bin/manilist.man create mode 100755 bin/packinit.SH create mode 100644 bin/packinit.man create mode 100755 bin/perload create mode 100644 dist.man create mode 100755 install.SH create mode 100644 jmake/Jmakefile create mode 100755 jmake/Makefile.SH create mode 100644 jmake/NOTES create mode 100644 jmake/README create mode 100755 jmake/bindex.SH create mode 100644 jmake/files/Jmake.rules create mode 100644 jmake/files/Jmake.tmpl create mode 100755 jmake/fixcpp.SH create mode 100755 jmake/jmake.SH create mode 100644 jmake/jmake.man create mode 100755 jmake/jmkmf.SH create mode 100644 jmake/jmkmf.man create mode 100644 kit/Jmakefile create mode 100755 kit/Makefile.SH create mode 100644 kit/README create mode 100755 kit/kitpost.SH create mode 100644 kit/kitpost.man create mode 100755 kit/kitsend.SH create mode 100644 kit/kitsend.man create mode 100644 kit/makeSH create mode 100644 kit/makeSH.man create mode 100755 kit/makedist.SH create mode 100644 kit/makedist.man create mode 100755 kit/manifake.SH create mode 100644 kit/manifake.man create mode 100644 lib/C/Jmakefile create mode 100755 lib/C/Makefile.SH create mode 100644 lib/C/fake/Jmakefile create mode 100755 lib/C/fake/Makefile.SH create mode 100644 lib/C/fake/dup2.C create mode 100644 lib/C/fake/getopt.C create mode 100644 lib/C/fake/rename.C create mode 100644 lib/C/fake/scandir.C create mode 100644 lib/C/fake/setsid.C create mode 100644 lib/Jmakefile create mode 100755 lib/Makefile.SH create mode 100644 lib/errnolist.a create mode 100644 lib/errnolist.mk create mode 100644 lib/errnolist.sh create mode 100644 lib/makedepend.sh create mode 100644 lib/makedir.sh create mode 100644 mcon/INTRO create mode 100644 mcon/Jmakefile create mode 100755 mcon/Makefile.SH create mode 100644 mcon/NOTES create mode 100644 mcon/README create mode 100644 mcon/U/AAAAA.U create mode 100644 mcon/U/Begin.U create mode 100644 mcon/U/Checkcc.U create mode 100644 mcon/U/Chk_MANI.U create mode 100644 mcon/U/Chk_whoami.U create mode 100644 mcon/U/Compile.U create mode 100644 mcon/U/Config_h.U create mode 100644 mcon/U/Config_sh.U create mode 100644 mcon/U/Configdir.U create mode 100644 mcon/U/Cppsym.U create mode 100644 mcon/U/Cross.U create mode 100644 mcon/U/Csym.U create mode 100644 mcon/U/End.U create mode 100644 mcon/U/Extract.U create mode 100644 mcon/U/Extractall.U create mode 100644 mcon/U/Filexp.U create mode 100644 mcon/U/Findhdr.U create mode 100644 mcon/U/Finish.U create mode 100644 mcon/U/Getfile.U create mode 100644 mcon/U/Guess.U create mode 100644 mcon/U/Head.U create mode 100644 mcon/U/Inhdr.U create mode 100644 mcon/U/Init.U create mode 100644 mcon/U/Inlibc.U create mode 100644 mcon/U/Instruct.U create mode 100644 mcon/U/Loc.U create mode 100644 mcon/U/Loc_sed.U create mode 100644 mcon/U/Magic_h.U create mode 100644 mcon/U/MailAuthor.U create mode 100644 mcon/U/MailList.U create mode 100644 mcon/U/Mkdirp.U create mode 100644 mcon/U/Mksymlinks.U create mode 100644 mcon/U/Myinit.U create mode 100644 mcon/U/Myread.U create mode 100644 mcon/U/Nothing.U create mode 100644 mcon/U/Null.U create mode 100644 mcon/U/Obsol_h.U create mode 100644 mcon/U/Obsol_sh.U create mode 100644 mcon/U/Oldconfig.U create mode 100644 mcon/U/Oldsym.U create mode 100644 mcon/U/Options.U create mode 100644 mcon/U/Prefixit.U create mode 100644 mcon/U/Prefixup.U create mode 100644 mcon/U/Rcs.U create mode 100644 mcon/U/Setvar.U create mode 100644 mcon/U/Signal.U create mode 100644 mcon/U/Tr.U create mode 100644 mcon/U/Typedef.U create mode 100644 mcon/U/Unix.U create mode 100644 mcon/U/Warn.U create mode 100644 mcon/U/Warn_v7EXT.U create mode 100644 mcon/U/Warn_v7ND.U create mode 100644 mcon/U/Whoa.U create mode 100644 mcon/U/abortsig.U create mode 100644 mcon/U/active.U create mode 100644 mcon/U/afs.U create mode 100644 mcon/U/alignbytes.U create mode 100644 mcon/U/archlib.U create mode 100644 mcon/U/archname.U create mode 100644 mcon/U/baserev.U create mode 100644 mcon/U/basicshell.U create mode 100644 mcon/U/bin.U create mode 100644 mcon/U/bitpbyte.U create mode 100644 mcon/U/byteorder.U create mode 100644 mcon/U/cc.U create mode 100644 mcon/U/ccflags.U create mode 100644 mcon/U/cf_email.U create mode 100644 mcon/U/cf_name.U create mode 100644 mcon/U/cf_who.U create mode 100644 mcon/U/charorder.U create mode 100644 mcon/U/charsize.U create mode 100644 mcon/U/contains.U create mode 100644 mcon/U/cpp_stuff.U create mode 100644 mcon/U/cpp_trad.U create mode 100644 mcon/U/cppfilecom.U create mode 100644 mcon/U/cppstdin.U create mode 100644 mcon/U/d_NOFILE.U create mode 100644 mcon/U/d_NeWS.U create mode 100644 mcon/U/d_PORTAR.U create mode 100644 mcon/U/d_SHM_MAC.U create mode 100644 mcon/U/d_access.U create mode 100644 mcon/U/d_alarm.U create mode 100644 mcon/U/d_attribut.U create mode 100644 mcon/U/d_bcmp.U create mode 100644 mcon/U/d_bcopy.U create mode 100644 mcon/U/d_brokstat.U create mode 100644 mcon/U/d_bsdjmp.U create mode 100644 mcon/U/d_byacc.U create mode 100644 mcon/U/d_bzero.U create mode 100644 mcon/U/d_casti32.U create mode 100644 mcon/U/d_castneg.U create mode 100644 mcon/U/d_cbrt.U create mode 100644 mcon/U/d_charsprf.U create mode 100644 mcon/U/d_chown.U create mode 100644 mcon/U/d_chroot.U create mode 100644 mcon/U/d_chsize.U create mode 100644 mcon/U/d_ckeypad.U create mode 100644 mcon/U/d_closedir.U create mode 100644 mcon/U/d_const.U create mode 100644 mcon/U/d_crypt.U create mode 100644 mcon/U/d_csh.U create mode 100644 mcon/U/d_ctermid.U create mode 100644 mcon/U/d_cuserid.U create mode 100644 mcon/U/d_dbl_dig.U create mode 100644 mcon/U/d_debugging.U create mode 100644 mcon/U/d_difftime.U create mode 100644 mcon/U/d_dlerror.U create mode 100644 mcon/U/d_dlopen.U create mode 100644 mcon/U/d_dosuid.U create mode 100644 mcon/U/d_drem.U create mode 100644 mcon/U/d_dup2.U create mode 100644 mcon/U/d_eofpipe.U create mode 100644 mcon/U/d_euc2jis.U create mode 100644 mcon/U/d_fchmod.U create mode 100644 mcon/U/d_fchown.U create mode 100644 mcon/U/d_fcntl.U create mode 100644 mcon/U/d_fd_set.U create mode 100644 mcon/U/d_ffs.U create mode 100644 mcon/U/d_fgetpos.U create mode 100644 mcon/U/d_flexfnam.U create mode 100644 mcon/U/d_flock.U create mode 100644 mcon/U/d_fmod.U create mode 100644 mcon/U/d_fork.U create mode 100644 mcon/U/d_fsetpos.U create mode 100644 mcon/U/d_ftime.U create mode 100644 mcon/U/d_ftrncate.U create mode 100644 mcon/U/d_gconvert.U create mode 100644 mcon/U/d_getgrps.U create mode 100644 mcon/U/d_gethbynm.U create mode 100644 mcon/U/d_gethent.U create mode 100644 mcon/U/d_gethid.U create mode 100644 mcon/U/d_gethname.U create mode 100644 mcon/U/d_getlogin.U create mode 100644 mcon/U/d_getopt.U create mode 100644 mcon/U/d_getpagsz.U create mode 100644 mcon/U/d_getpgid.U create mode 100644 mcon/U/d_getpgrp.U create mode 100644 mcon/U/d_getpgrp2.U create mode 100644 mcon/U/d_getppid.U create mode 100644 mcon/U/d_getprior.U create mode 100644 mcon/U/d_getpwent.U create mode 100644 mcon/U/d_getwd.U create mode 100644 mcon/U/d_gnulibc.U create mode 100644 mcon/U/d_group.U create mode 100644 mcon/U/d_havetlib.U create mode 100644 mcon/U/d_hidnet.U create mode 100644 mcon/U/d_htonl.U create mode 100644 mcon/U/d_inetaton.U create mode 100644 mcon/U/d_inetd.U create mode 100644 mcon/U/d_internet.U create mode 100644 mcon/U/d_isascii.U create mode 100644 mcon/U/d_itimer.U create mode 100644 mcon/U/d_keepsig.U create mode 100644 mcon/U/d_killpg.U create mode 100644 mcon/U/d_link.U create mode 100644 mcon/U/d_linuxstd.U create mode 100644 mcon/U/d_locconv.U create mode 100644 mcon/U/d_lockf.U create mode 100644 mcon/U/d_lstat.U create mode 100644 mcon/U/d_mblen.U create mode 100644 mcon/U/d_mbstowcs.U create mode 100644 mcon/U/d_mbtowc.U create mode 100644 mcon/U/d_memalign.U create mode 100644 mcon/U/d_memccpy.U create mode 100644 mcon/U/d_memchr.U create mode 100644 mcon/U/d_memcmp.U create mode 100644 mcon/U/d_memcpy.U create mode 100644 mcon/U/d_memmove.U create mode 100644 mcon/U/d_memset.U create mode 100644 mcon/U/d_mkdir.U create mode 100644 mcon/U/d_mkfifo.U create mode 100644 mcon/U/d_mktime.U create mode 100644 mcon/U/d_mmap.U create mode 100644 mcon/U/d_msem_lck.U create mode 100644 mcon/U/d_msg.U create mode 100644 mcon/U/d_msgctl.U create mode 100644 mcon/U/d_msgget.U create mode 100644 mcon/U/d_msgrcv.U create mode 100644 mcon/U/d_msgsnd.U create mode 100644 mcon/U/d_msync.U create mode 100644 mcon/U/d_munmap.U create mode 100644 mcon/U/d_newsadm.U create mode 100644 mcon/U/d_nice.U create mode 100644 mcon/U/d_nolnbuf.U create mode 100644 mcon/U/d_normsig.U create mode 100644 mcon/U/d_open3.U create mode 100644 mcon/U/d_passwd.U create mode 100644 mcon/U/d_pathconf.U create mode 100644 mcon/U/d_pause.U create mode 100644 mcon/U/d_perror.U create mode 100644 mcon/U/d_pidcheck.U create mode 100644 mcon/U/d_pipe.U create mode 100644 mcon/U/d_poll.U create mode 100644 mcon/U/d_popen.U create mode 100644 mcon/U/d_portable.U create mode 100644 mcon/U/d_pread.U create mode 100644 mcon/U/d_preadv.U create mode 100644 mcon/U/d_psignal.U create mode 100644 mcon/U/d_pwrite.U create mode 100644 mcon/U/d_pwritev.U create mode 100644 mcon/U/d_raster.U create mode 100644 mcon/U/d_rdchk.U create mode 100644 mcon/U/d_readdir.U create mode 100644 mcon/U/d_readlink.U create mode 100644 mcon/U/d_regcmp.U create mode 100644 mcon/U/d_rename.U create mode 100644 mcon/U/d_rmdir.U create mode 100644 mcon/U/d_rusage.U create mode 100644 mcon/U/d_safebcpy.U create mode 100644 mcon/U/d_safemcpy.U create mode 100644 mcon/U/d_sanemcmp.U create mode 100644 mcon/U/d_sbrk.U create mode 100644 mcon/U/d_scandir.U create mode 100644 mcon/U/d_scannl.U create mode 100644 mcon/U/d_scorfl.U create mode 100644 mcon/U/d_select.U create mode 100644 mcon/U/d_sem.U create mode 100644 mcon/U/d_semctl.U create mode 100644 mcon/U/d_semget.U create mode 100644 mcon/U/d_semop.U create mode 100644 mcon/U/d_setegid.U create mode 100644 mcon/U/d_seteuid.U create mode 100644 mcon/U/d_setgrps.U create mode 100644 mcon/U/d_setlnbuf.U create mode 100644 mcon/U/d_setlocale.U create mode 100644 mcon/U/d_setpgid.U create mode 100644 mcon/U/d_setpgrp.U create mode 100644 mcon/U/d_setpgrp2.U create mode 100644 mcon/U/d_setprior.U create mode 100644 mcon/U/d_setregid.U create mode 100644 mcon/U/d_setreuid.U create mode 100644 mcon/U/d_setrgid.U create mode 100644 mcon/U/d_setruid.U create mode 100644 mcon/U/d_setsid.U create mode 100644 mcon/U/d_sgndchr.U create mode 100644 mcon/U/d_shm.U create mode 100644 mcon/U/d_shmat.U create mode 100644 mcon/U/d_shmctl.U create mode 100644 mcon/U/d_shmdt.U create mode 100644 mcon/U/d_shmget.U create mode 100644 mcon/U/d_sigaction.U create mode 100644 mcon/U/d_sigblock.U create mode 100644 mcon/U/d_sighold.U create mode 100644 mcon/U/d_siglist.U create mode 100644 mcon/U/d_sigsetjmp.U create mode 100644 mcon/U/d_sigsetmk.U create mode 100644 mcon/U/d_sigvec.U create mode 100644 mcon/U/d_sjis2jis.U create mode 100644 mcon/U/d_socket.U create mode 100644 mcon/U/d_speedopt.U create mode 100644 mcon/U/d_stat.U create mode 100644 mcon/U/d_statblks.U create mode 100644 mcon/U/d_stdstdio.U create mode 100644 mcon/U/d_strccmp.U create mode 100644 mcon/U/d_strchr.U create mode 100644 mcon/U/d_strcoll.U create mode 100644 mcon/U/d_strcspn.U create mode 100644 mcon/U/d_strctcpy.U create mode 100644 mcon/U/d_strdup.U create mode 100644 mcon/U/d_strerror.U create mode 100644 mcon/U/d_strftime.U create mode 100644 mcon/U/d_strstr.U create mode 100644 mcon/U/d_strtod.U create mode 100644 mcon/U/d_strtok.U create mode 100644 mcon/U/d_strtol.U create mode 100644 mcon/U/d_strtoul.U create mode 100644 mcon/U/d_strxfrm.U create mode 100644 mcon/U/d_su_chown.U create mode 100644 mcon/U/d_symlink.U create mode 100644 mcon/U/d_syscall.U create mode 100644 mcon/U/d_sysconf.U create mode 100644 mcon/U/d_syslog.U create mode 100644 mcon/U/d_system.U create mode 100644 mcon/U/d_table.U create mode 100644 mcon/U/d_tcgtpgrp.U create mode 100644 mcon/U/d_tcstpgrp.U create mode 100644 mcon/U/d_time.U create mode 100644 mcon/U/d_times.U create mode 100644 mcon/U/d_tminsys.U create mode 100644 mcon/U/d_truncate.U create mode 100644 mcon/U/d_tzmin.U create mode 100644 mcon/U/d_tzname.U create mode 100644 mcon/U/d_ulimit.U create mode 100644 mcon/U/d_umask.U create mode 100644 mcon/U/d_usendir.U create mode 100644 mcon/U/d_usleep.U create mode 100644 mcon/U/d_uwait.U create mode 100644 mcon/U/d_vfork.U create mode 100644 mcon/U/d_voidsig.U create mode 100644 mcon/U/d_volatile.U create mode 100644 mcon/U/d_vprintf.U create mode 100644 mcon/U/d_wait3.U create mode 100644 mcon/U/d_wait4.U create mode 100644 mcon/U/d_waitpid.U create mode 100644 mcon/U/d_wcstombs.U create mode 100644 mcon/U/d_wctomb.U create mode 100644 mcon/U/d_wifstat.U create mode 100644 mcon/U/d_xdrs.U create mode 100644 mcon/U/defeditor.U create mode 100644 mcon/U/doublesize.U create mode 100644 mcon/U/ebcdic.U create mode 100644 mcon/U/errnolist.U create mode 100644 mcon/U/etc.U create mode 100644 mcon/U/filexp.U create mode 100644 mcon/U/floatsize.U create mode 100644 mcon/U/fpostype.U create mode 100644 mcon/U/fpu.U create mode 100644 mcon/U/gccvers.U create mode 100644 mcon/U/gidtype.U create mode 100644 mcon/U/groupstype.U create mode 100644 mcon/U/h_fcntl.U create mode 100644 mcon/U/h_sysfile.U create mode 100644 mcon/U/i_arpainet.U create mode 100644 mcon/U/i_db.U create mode 100644 mcon/U/i_dbm.U create mode 100644 mcon/U/i_dirent.U create mode 100644 mcon/U/i_dld.U create mode 100644 mcon/U/i_dlfcn.U create mode 100644 mcon/U/i_fcntl.U create mode 100644 mcon/U/i_float.U create mode 100644 mcon/U/i_gdbm.U create mode 100644 mcon/U/i_grp.U create mode 100644 mcon/U/i_inttypes.U create mode 100644 mcon/U/i_limits.U create mode 100644 mcon/U/i_locale.U create mode 100644 mcon/U/i_malloc.U create mode 100644 mcon/U/i_math.U create mode 100644 mcon/U/i_memory.U create mode 100644 mcon/U/i_ndbm.U create mode 100644 mcon/U/i_neterrno.U create mode 100644 mcon/U/i_niin.U create mode 100644 mcon/U/i_pwd.U create mode 100644 mcon/U/i_regex.U create mode 100644 mcon/U/i_sfio.U create mode 100644 mcon/U/i_stddef.U create mode 100644 mcon/U/i_stdlib.U create mode 100644 mcon/U/i_string.U create mode 100644 mcon/U/i_sysdir.U create mode 100644 mcon/U/i_sysfile.U create mode 100644 mcon/U/i_sysioctl.U create mode 100644 mcon/U/i_sysmman.U create mode 100644 mcon/U/i_sysndir.U create mode 100644 mcon/U/i_sysparam.U create mode 100644 mcon/U/i_sysresrc.U create mode 100644 mcon/U/i_sysselct.U create mode 100644 mcon/U/i_syssock.U create mode 100644 mcon/U/i_sysstat.U create mode 100644 mcon/U/i_systable.U create mode 100644 mcon/U/i_systimeb.U create mode 100644 mcon/U/i_systimes.U create mode 100644 mcon/U/i_systwgcf.U create mode 100644 mcon/U/i_systypes.U create mode 100644 mcon/U/i_sysun.U create mode 100644 mcon/U/i_syswait.U create mode 100644 mcon/U/i_termio.U create mode 100644 mcon/U/i_time.U create mode 100644 mcon/U/i_unistd.U create mode 100644 mcon/U/i_utime.U create mode 100644 mcon/U/i_values.U create mode 100644 mcon/U/i_varhdr.U create mode 100644 mcon/U/i_vfork.U create mode 100644 mcon/U/i_whoami.U create mode 100644 mcon/U/inc.U create mode 100644 mcon/U/install.U create mode 100644 mcon/U/intsize.U create mode 100644 mcon/U/ipc.U create mode 100644 mcon/U/issymlink.U create mode 100644 mcon/U/kernel.U create mode 100644 mcon/U/lex.U create mode 100644 mcon/U/lib.U create mode 100644 mcon/U/libc.U create mode 100644 mcon/U/libdbm.U create mode 100644 mcon/U/libflex.U create mode 100644 mcon/U/libnlist.U create mode 100644 mcon/U/libnm.U create mode 100644 mcon/U/libpth.U create mode 100644 mcon/U/libs.U create mode 100644 mcon/U/libyacc.U create mode 100644 mcon/U/lintlib.U create mode 100644 mcon/U/lns.U create mode 100644 mcon/U/locdist.U create mode 100644 mcon/U/longsize.U create mode 100644 mcon/U/lseektype.U create mode 100644 mcon/U/maildir.U create mode 100644 mcon/U/mailer.U create mode 100644 mcon/U/mailfile.U create mode 100644 mcon/U/make.U create mode 100644 mcon/U/mallocsrc.U create mode 100644 mcon/U/man1dir.U create mode 100644 mcon/U/man3dir.U create mode 100644 mcon/U/manfmt.U create mode 100644 mcon/U/mansrc.U create mode 100644 mcon/U/mboxchar.U create mode 100644 mcon/U/mkdep.U create mode 100644 mcon/U/models.U create mode 100644 mcon/U/modetype.U create mode 100644 mcon/U/myhostname.U create mode 100644 mcon/U/n.U create mode 100644 mcon/U/nametype.U create mode 100644 mcon/U/nblock_io.U create mode 100644 mcon/U/newslevel.U create mode 100644 mcon/U/newslib.U create mode 100644 mcon/U/newsspool.U create mode 100644 mcon/U/nis.U create mode 100644 mcon/U/nlist_pfx.U create mode 100644 mcon/U/orderlib.U create mode 100644 mcon/U/orgname.U create mode 100644 mcon/U/packadmin.U create mode 100644 mcon/U/package.U create mode 100644 mcon/U/pager.U create mode 100644 mcon/U/patchlevel.U create mode 100644 mcon/U/perlpath.U create mode 100644 mcon/U/pidtype.U create mode 100644 mcon/U/pkgsrc.U create mode 100644 mcon/U/prefix.U create mode 100644 mcon/U/prefshell.U create mode 100644 mcon/U/privlib.U create mode 100644 mcon/U/prototype.U create mode 100644 mcon/U/ptrsize.U create mode 100644 mcon/U/randbits.U create mode 100644 mcon/U/randfunc.U create mode 100644 mcon/U/rcs_branch.U create mode 100644 mcon/U/registers.U create mode 100644 mcon/U/rootid.U create mode 100644 mcon/U/sbrksmart.U create mode 100644 mcon/U/sbrktype.U create mode 100644 mcon/U/scriptdir.U create mode 100644 mcon/U/selecttype.U create mode 100644 mcon/U/sh.U create mode 100644 mcon/U/shm_for.U create mode 100644 mcon/U/sig_name.U create mode 100644 mcon/U/sitearch.U create mode 100644 mcon/U/sitelib.U create mode 100644 mcon/U/sizetype.U create mode 100644 mcon/U/so.U create mode 100644 mcon/U/sockopt.U create mode 100644 mcon/U/spitshell.U create mode 100644 mcon/U/src.U create mode 100644 mcon/U/ssizetype.U create mode 100644 mcon/U/startperl.U create mode 100644 mcon/U/startsh.U create mode 100644 mcon/U/stdchar.U create mode 100644 mcon/U/sunscanf.U create mode 100644 mcon/U/sysman.U create mode 100644 mcon/U/trnl.U create mode 100644 mcon/U/uidtype.U create mode 100644 mcon/U/usenm.U create mode 100644 mcon/U/usesocks.U create mode 100644 mcon/U/usrinc.U create mode 100644 mcon/U/vaproto.U create mode 100644 mcon/U/voidflags.U create mode 100644 mcon/U/warnflags.U create mode 100644 mcon/U/yacc.U create mode 100644 mcon/configure create mode 100644 mcon/files/Internal.U create mode 100644 mcon/files/README create mode 100644 mcon/files/d_function.U create mode 100644 mcon/files/dir.U create mode 100644 mcon/files/file.U create mode 100644 mcon/files/i_include.U create mode 100644 mcon/files/keyword.U create mode 100644 mcon/files/locate.U create mode 100644 mcon/files/question.U create mode 100644 mcon/files/rcshead.U create mode 100644 mcon/files/shell.U create mode 100644 mcon/files/type.U create mode 100755 mcon/makegloss.SH create mode 100644 mcon/man/Jmakefile create mode 100755 mcon/man/Makefile.SH create mode 100755 mcon/man/mconfig.SH create mode 100755 mcon/man/mlint.SH create mode 100755 mcon/man/mxref.SH create mode 100755 mcon/mconfig.SH create mode 100755 mcon/mlint.SH create mode 100755 mcon/mxref.SH create mode 100644 mcon/pl/common.pl create mode 100644 mcon/pl/configure.pl create mode 100644 mcon/pl/cosmetic.pl create mode 100644 mcon/pl/depend.pl create mode 100644 mcon/pl/eval.pl create mode 100644 mcon/pl/extract.pl create mode 100644 mcon/pl/files.pl create mode 100644 mcon/pl/gensym.pl create mode 100644 mcon/pl/init.pl create mode 100644 mcon/pl/lint.pl create mode 100644 mcon/pl/locate.pl create mode 100644 mcon/pl/makefile.pl create mode 100644 mcon/pl/obsolete.pl create mode 100644 mcon/pl/order.pl create mode 100644 mcon/pl/tsort.pl create mode 100644 mcon/pl/wanted.pl create mode 100644 mcon/pl/xref.pl create mode 100644 mcon/pl/xwant.pl create mode 100644 pat/Jmakefile create mode 100755 pat/Makefile.SH create mode 100644 pat/README create mode 100755 pat/pat.SH create mode 100644 pat/pat.man create mode 100755 pat/patbase.SH create mode 100644 pat/patchlevel.h create mode 100755 pat/patcil.SH create mode 100755 pat/patclean.SH create mode 100755 pat/patcol.SH create mode 100755 pat/patdiff.SH create mode 100755 pat/patftp.SH create mode 100755 pat/patindex.SH create mode 100755 pat/patlog.SH create mode 100755 pat/patmake.SH create mode 100755 pat/patname.SH create mode 100755 pat/patnotify.SH create mode 100755 pat/patpost.SH create mode 100755 pat/patsend.SH create mode 100755 pat/patsnap.SH create mode 100644 patchlevel.h create mode 100644 pl/comment.pl create mode 100644 pl/copyright.pl create mode 100644 pl/editor.pl create mode 100644 pl/fullname.pl create mode 100644 pl/listedit.pl create mode 100644 pl/logname.pl create mode 100644 pl/makedir.pl create mode 100644 pl/manifake.pl create mode 100644 pl/newer.pl create mode 100644 pl/package.pl create mode 100644 pl/patseq.pl create mode 100644 pl/profile.pl create mode 100644 pl/rangeargs.pl create mode 100644 pl/rcsargs.pl create mode 100644 pl/snapshot.pl create mode 100644 pl/tilde.pl create mode 100644 pl/users.pl diff --git a/Artistic b/Artistic new file mode 100644 index 0000000..a05f9e8 --- /dev/null +++ b/Artistic @@ -0,0 +1,125 @@ + The "Artistic License" + + Preamble + +The intent of this document is to state the conditions under which a +Package may be copied, such that the Copyright Holder maintains some +semblance of artistic control over the development of the Package, +while giving the users of the package the right to use and distribute +the Package in a more-or-less customary fashion, plus the right to make +reasonable modifications. + +It also grants you the rights to reuse parts of a Package in your own +programs without transferring this License to those programs, provided +that you meet some reasonable requirements. + +Definitions: + + "Package" refers to the collection of files distributed by the + Copyright Holder, and derivatives of that collection of files + created through textual modification. + + "Standard Version" refers to such a Package if it has not been + modified, or has been modified in accordance with the wishes + of the Copyright Holder as specified below. + + "Copyright Holder" is whoever is named in the copyright or + copyrights for the package. + + "You" is you, if you're thinking about copying or distributing + this Package. + + "Reasonable copying fee" is whatever you can justify on the + basis of media cost, duplication charges, time of people involved, + and so on. (You will not be required to justify it to the + Copyright Holder, but only to the computing community at large + as a market that must bear the fee.) + + "Freely Available" means that no fee is charged for the item + itself, though there may be fees involved in handling the item. + It also means that recipients of the item may redistribute it + under the same conditions they received it. + +1. You may make and give away verbatim copies of the source form of the +Standard Version of this Package without restriction, provided that you +duplicate all of the original copyright notices and associated disclaimers. + +2. You may apply bug fixes, portability fixes and other modifications +derived from the Public Domain or from the Copyright Holder. A Package +modified in such a way shall still be considered the Standard Version. + +3. You may otherwise modify your copy of this Package in any way, provided +that you insert a prominent notice in each changed file stating how and +when you changed that file, and provided that you do at least ONE of the +following: + + a) place your modifications in the Public Domain or otherwise make them + Freely Available, such as by posting said modifications to Usenet or + an equivalent medium, or placing the modifications on a major archive + site such as uunet.uu.net, or by allowing the Copyright Holder to include + your modifications in the Standard Version of the Package. + + b) use the modified Package only within your corporation or organization. + + c) rename any non-standard executables so the names do not conflict + with standard executables, which must also be provided, and provide + a separate manual page for each non-standard executable that clearly + documents how it differs from the Standard Version. + + d) make other distribution arrangements with the Copyright Holder. + +4. You may distribute the programs of this Package in object code or +executable form, provided that you do at least ONE of the following: + + a) distribute a Standard Version of the executables and library files, + together with instructions (in the manual page or equivalent) on where + to get the Standard Version. + + b) accompany the distribution with the machine-readable source of + the Package with your modifications. + + c) give non-standard executables non-standard names, and clearly + document the differences in manual pages (or equivalent), together + with instructions on where to get the Standard Version. + + d) make other distribution arrangements with the Copyright Holder. + +5. You may charge a reasonable copying fee for any distribution of this +Package. You may charge any fee you choose for support of this +Package. You may not charge a fee for this Package itself. However, +you may distribute this Package in aggregate with other (possibly +commercial) programs as part of a larger (possibly commercial) software +distribution provided that you do not advertise this Package as a +product of your own. + +6. The scripts and library files supplied as input to or produced as +output from the programs of this Package do not automatically fall +under the copyright of this Package, but belong to whoever generated +them, and may be sold commercially, and may be aggregated with this +Package. If such scripts or library files are aggregated with this +Package via the so-called "undump" or "unexec" methods of producing a +binary executable image, then distribution of such an image shall +neither be construed as a distribution of this Package nor shall it +fall under the restrictions of Paragraphs 3 and 4, provided that you do +not represent such an executable image as a Standard Version of this +Package. + +7. You may reuse parts of this Package in your own programs, provided that +you explicitly state where you got them from, in the source code (and, left +to your courtesy, in the documentation), duplicating all the associated +copyright notices and disclaimers. Besides your changes, if any, must be +clearly marked as such. Parts reused that way will no longer fall under this +license if, and only if, the name of your program(s) have no immediate +connection with the name of the Package itself or its associated programs. +You may then apply whatever restrictions you wish on the reused parts or +choose to place them in the Public Domain--this will apply only within the +context of your package. + +8. The name of the Copyright Holder may not be used to endorse or promote +products derived from this software without specific prior written permission. + +9. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED +WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. + + The End diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..3dce502 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,1457 @@ +Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi + +. Description: + + This huge set of patch results from an integration of the + perl5 units into the dist-3.0 package. A few improvements + of mine are also incorporated here, but this patch set should + mainly be credited to Andy Dougherty and Chip Salzenberg, who + have both assumed the perl5 Patch Pumpkin with success and brio. + + I won't document most of the changes in detail. Only the obvious + ones were kept here. You can look closer to the patches themselves + to see what really changed. Especially the new units, since you + now have more symbols to check for in your C code... + + Regenerated Configure with current set of units. + + Added Perl Patch Pumpkin credits. Thanks to Andy Dougherty and + to Chip Salzenberg for their incredible contributions to + metaconfig. + + Changed my email address and updated copyright dates + + Added support for src.U. This means you can now run Configure + from a remote directory to separate the build directory and + the (possibly read-only) source tree. + Note that some of your private units may require some changes + due to that... + + Removed support for NO_PROTOTYPE detection on SCO. + + Added cute quoting trick for wild stringify support, which + allows non-ANSI stringification to occur. + + Replaced .a with $_a all over the place. + Likewise for .o replaced by $_o. + You'll have to do that to your own private units. + + Integrated new units from perl5. I will not document most + of the perl5-related changes here. People interested can + look at Andy's notes in the perl5 distribution. + + New USE_BSD_GETPGRP to detect the getpgrp() flavour. The old + USE_BSDPGRP has been obsoleted in favor of USE_BSD_SETPGRP. + Indeed, setpgrp() and getpgrp() can have distinct flavors, + so we need two distinct tests for them. + + Useless units dropped: d_group.U and d_passwd.U. + + Mention that can be included if HAS_POLL defined. + + Improved overlapping copy check. + + Added support for Free_t, the type of free(). + + Don't use nm with the GNU C library. + Added support for Linux shared libs. + + Don't prompt them if the void support is high enough for us + and don't ask for the include path unless they are on a MIPS. + + Added the srcdir support to "configure" now that we have src.U. + + Documented the runnning environment and the src.U unit in + the metaconfig man page. The $_a and $_o are also mentionned. + All the generated scripts must now start with a "$startsh" + to ensure proper shell execution. + + New "create" and "empty" lint directives. + + New -L option for metaxref to match metaconfig and metalint. + + Documents contents of the message sent by patnotify: + we now let them know the patch priority and description. + + Added a whole bunch of new units, mostly from the perl5 team. + +. Files changed: + + * bin/packinit.SH: Fixed one wrong ':' comment in .package. + + * jmake/files/Jmake.rules: Now handles USRINC for dependencies. + Smarter about dependencies computation. + + * jmake/files/Jmake.tmpl: Lex path can now be configured. + + * mcon/U/Begin.U: Added Extractall dependency. + + * mcon/U/Config_sh.U, mcon/U/Oldsym.U, mcon/U/Extract.U, + mcon/U/patchlevel.U, mcon/U/MailAuthor.U, mcon/U/Chk_MANI.U, + mcon/U/Config_h.U: Added support for src.U. + + * mcon/U/Configdir.U: Have README explicitely mention the package + name. + + * mcon/U/make.U, mcon/U/d_strtoul.U, mcon/U/Unix.U, + mcon/U/d_inetaton.U, mcon/U/sitearch.U, mcon/U/d_sanemcmp.U, + mcon/U/i_locale.U, mcon/U/d_sigaction.U, mcon/U/d_getpgid.U, + mcon/U/src.U, mcon/U/sitelib.U, mcon/U/d_brokstat.U, mcon/U/man3dir.U, + , mcon/U/d_sigsetjmp.U, mcon/U/i_sysstat.U, mcon/U/d_strtod.U, + mcon/U/d_byacc.U, mcon/U/sh.U, mcon/U/Signal.U, mcon/U/d_gnulibc.U, + mcon/U/man1dir.U, mcon/U/Extractall.U, mcon/U/i_values.U, + mcon/U/i_sfio.U: Created. + + * mcon/U/Getfile.U: Getfile script now begins with "startsh". + + * mcon/U/Head.U: Make sure we unset CDPATH for shells that support + this. Improved Korn shell detection and handling. + + * mcon/U/Instruct.U: Logname / whoami sequence rewritten to use case. + + * mcon/U/Loc.U: Allow users to specify paths on the command line. + Will now substitute cp for ln if not supported. + + * mcon/U/Myread.U: Myread script now starts with a "startsh". + Miscellaneous fixes. + + * mcon/U/Oldconfig.U: Added support for src.U. New OSNAME define. + Can now sense new OSes. + + * mcon/U/Options.U: Optdef.sh now starts with a "startsh". Moved + some code from Head.U. + + * mcon/U/Whoa.U: Whoa script now starts with leading "startsh". + + * mcon/U/afs.U: Can now explicitely tell Configure whether AFS is + running. + + * mcon/U/archlib.U: Skip existence checks for archlib. + + * mcon/U/archname.U: Changed the way the archname is mangled from + uname. + + * mcon/U/byteorder.U: No longer ask the user if the test runs ok. + + * mcon/U/ccflags.U: Removed support for NO_PROTOTYPE detection on + SCO. New locincpth variable. Added info on the "additional ld + flags" question. + + * mcon/U/cf_who.U: New computation method avoiding use of temporary + file. + + * mcon/U/cpp_stuff.U: Added cute quoting trick for wild stringify + support. + + * mcon/U/d_bsdjmp.U, mcon/U/d_fd_set.U, mcon/U/models.U, + mcon/U/d_scannl.U, mcon/U/d_open3.U, mcon/U/d_closedir.U: Added ?F: + metalint hint. + + * mcon/U/libs.U, mcon/U/libnm.U, mcon/U/libyacc.U, mcon/U/libflex.U, + mcon/U/libdbm.U, mcon/U/d_socket.U, mcon/U/d_normsig.U, + mcon/U/d_crypt.U: Replaced .a with $_a all over the place. + + * mcon/U/d_csh.U: Added full_csh to preserve the full path even when + portable. + + * mcon/U/d_dosuid.U: Moved unit to TOP via a ?Y: layout directive. + Tell them /dev/fd is not about floppy disks. + + * mcon/U/d_gconvert.U: Integrated new unit from perl5. + + * mcon/U/d_getpgrp.U: New USE_BSD_GETPGRP to detect the getpgrp() + flavour. + + * mcon/U/d_group.U, mcon/U/d_passwd.U: Useless unit dropped. + + * mcon/U/d_usendir.U, mcon/U/d_havetlib.U, mcon/U/errnolist.U: + Replaced .a with $_a all over the place. Likewise for .o replaced by + $_o. + + * mcon/U/d_newsadm.U: Added Guess dependency. + + * mcon/U/d_pidcheck.U: Replaced .o with $_o all over the place. + Added ?F: metalint hint. + + * mcon/U/d_poll.U: Mention that can be included if HAS_POLL + defined. + + * mcon/U/d_safebcpy.U, mcon/U/d_safemcpy.U: Improved overlapping copy + check. Comfort them if they have memmove. Added ?F: metalint hint. + + * mcon/U/d_setpgid.U: Reworded symbol comments. + + * mcon/U/d_setpgrp.U: Obsoleted USE_BSDGRP in favor of + USE_BSD_SETPGRP. Another unit now also defines a USE_BSD_GETPGRP. + Fallback for test program failure improved. + + * mcon/U/d_sgndchr.U, mcon/U/d_wifstat.U: Added a ?F: metalint hint. + + * mcon/U/d_sigvec.U: There is now a separate routine for sigaction(). + + * mcon/U/d_stdstdio.U: Merged with perl5's unit. + + * mcon/U/d_syslog.U, mcon/U/mkdep.U: Replaced .o with $_o all over + the place. + + * mcon/U/i_dbm.U: Added I_RPCSVC_DBM check. + + * mcon/U/i_varhdr.U: Varargs script now starts with leading "startsh". + + * mcon/U/intsize.U: Avoid prompting the user if the test runs ok. + Moved code from longsize.U into there. New tests for shortsize as + well. + + * mcon/U/libc.U: Replaced .a with $_a all over the place. Added + support for HPUX-10 nm output. + + * mcon/U/libnlist.U: Added usrinc and mips on the dependency line. + Make sure we call ./mips. Added a ?LINT: hint. + + * mcon/U/libpth.U: New loclibpth variable. + + * mcon/U/longsize.U: Code moved to intsize.U. + + * mcon/U/mallocsrc.U: Added support for Free_t, the type of free(). + Replaced .o with $_o all over the place. + + * mcon/U/manfmt.U, mcon/U/mansrc.U: Don't ask for AFS when they + choose to not install pages. + + * mcon/U/myhostname.U: Improved hostname lookup by using ypmatch when + NIS is used. + + * mcon/U/nblock_io.U: Simplify here document for shells that can't + handle them well. Force use of "startsh" at the head of the + generated script. Added new files to the ?F: metalint hint. + + * mcon/U/nis.U: Ensure suitable defaults for hostcat and friends. + + * mcon/U/orderlib.U: Replaced .a with $_a all over the place. + Likewise for .o replaced by $_o. Now uses the ar located by Loc.U. + + * mcon/U/randbits.U: Added and to the C program + test. + + * mcon/U/registers.U: Removed empty ?LINT lines. + + * mcon/U/selecttype.U: Always include when available + for test. + + * mcon/U/sig_name.U: Brand new algorithm for sig_name and (new!) + sig_num. + + * mcon/U/spitshell.U: Removed useless chatter as this is now done + very early. + + * mcon/U/ssizetype.U: Integrated perl5 concerns for mis-configured + sfio. + + * mcon/U/startperl.U: Warn them if the #! line is too long for their + OS. + + * mcon/U/startsh.U: Avoid needless chatter since this is now done + very early. + + * mcon/U/usenm.U: Don't use nm with the GNU C library. Added support + for Linux shared libs. + + * mcon/U/usrinc.U: Don't ask for the include path unless they are on + a MIPS. + + * mcon/U/voidflags.U: Don't prompt them if the void support is high + enough for us. + + * mcon/configure: Added the srcdir support now that we have src.U. + Random cleanup for nicer help message. + + * mcon/man/mconfig.SH: Documents the runnning environment and the + src.U unit. Added warnings for $_a and $_o, as well as "startsh". + + * mcon/man/mlint.SH: New "create" and "empty" lint directives. + Documented new messages. + + * mcon/mxref.SH, mcon/man/mxref.SH: New -L option to match metaconfig + and metalint. + + * mcon/pl/lint.pl: Added support for ?F: lines to monitor file usage. + Now honours "create" and "empty" lint directives. + + * pat/pat.man: Documents contents of the message sent by patnotify. + + * pat/patlog.SH: Typo fix. + + * pat/patnotify.SH: Let them know the patch priority and description. + +Mon Sep 25 10:33:26 MET 1995 Raphael Manfredi + +. Description: + + Smarter sed command to strip /usr/include dependencies in + jmake-generated Makfiles. Thanks to Ulrich Pfeifer + for contributing it. + + In response to the discussion on dist-users, jmake will now force + macro definitions to the left in the generated Makefile, even + though they may be nicely formatted in the imake-style within + the Jmakefile itself (centered on the =). + + Commented the purpose of the #un-def directive in the relevant + unit, since I tend to forget about this hack and almost considered + removing it without seeing the consequences. ;-) + + Configure will now abort when a mandatory command is missing. + Indeed, Configure relies on such commands to perform its various + tasks, and a miss can have dreadful consequences, without the + end-users noticing it. + + Protected option parsing code against 'echo -*' option failure. + + Various units are now forced to the top of Configure, if possible. + This is mainly interactive questions. Note that dependencies are + still respected, i.e. all the units on which those depend will + come before, so the top-ness is a relative issue. + + All possible install programs are now looked for, instead of + breaking the loop once one was found. Also, to optimize cache + access on AFS directories, the lookup is done on directories + first, then on programs instead of the other way round. + + New ?Y: directive to change unit layout. You may specify a + TOP, DEFAULT or BOTTOM request on that line to respectively + force the unit to the earliest possible, default or latest + possible place in the Configure script, as dependencies + permit. + + Symbols are now sorted according to the ?Y: layout directive. + + If you use the MailAuthor.U unit, you will be interested by the + new -i option for patsend to add extra instructions for people + receiving mailed patches. patnotify also tells users how to directly + request for mailed patches. The patch making process now automatically + supply the -i when invoking patsend. Changes contributed by Graham + Stoney . + +. Files changed: + + * jmake/files/Jmake.rules: Smarter sed command to strip /usr/include + dependencies. + + * jmake/jmake.SH: Will now force macro definitions to the left. + + * mcon/U/Config_h.U: Commented the purpose of the #un-def directive. + + * mcon/U/Loc.U: Commented the purpose of the #un-def directive. + Abort Configure run when mandatory command is missing. + + * mcon/U/Options.U: Protected option parsing code against 'echo -*' + option failure. + + * mcon/U/perlpath.U, mcon/U/manfmt.U, mcon/U/mansrc.U, + mcon/U/scriptdir.U, mcon/U/archlib.U, mcon/U/lib.U, mcon/U/privlib.U, + mcon/U/bin.U: Unit is now forced to the top of Configure, if possible. + + * mcon/U/install.U: All possible install programs are now looked for. + + * mcon/man/mconfig.SH, mcon/man/mlint.SH: Documented new ?Y: + directive. Fixed my e-mail address. + + * mcon/pl/depend.pl, mcon/pl/init.pl, mcon/pl/lint.pl: New ?Y: + directive to change unit layout. + + * mcon/pl/makefile.pl: Symbols are now sorted according to the ?Y: + layout directive. + + * mcon/pl/xref.pl: Added empty p_layout stub for new ?Y: directives. + + * pat/pat.man: New -i option for patsend to add extra instructions. + + * pat/patmake.SH: Now calls patsend with -i to add more instructions. + + * pat/patnotify.SH: Now tells users how to directly request for + mailed patches. + + * pat/patsend.SH: New -i option to add more instructions for + end-users. + +Tue Jul 25 16:41:40 METDST 1995 Raphael Manfredi + +. Description: + + pat/Jmakefile was missing an entry for the patlog program, which + prevented it from being installed, leading to chaos when patmake + was run. + + New contributions from Ilya Zakharevich + to provide OS/2 support. Configure can now be run under OS/2 using + a ksh shell interpreter. Support for pdksh is undergoing, as far + as I understand. + + The installation of script man pages can now cope with missing + files. The jmake rules used to require that all scripts or none + have .man files associated with them. From now on, the generated + Makefile will check for the manual page existence before trying + to install it. + + The clobber target now removes the .config directory as well, + which is generated by Configure to cache various information + over runs. Since clobber is intended to make a clean distribution, + that directory must be removed at that stage. + + All jmake error messages are now prefixed with the program name. + + Re-arranged compile line to include ldflags before objects + within all the compile-link tests in the metaconfig units, since + some systems require that ld flags be specfied at that place. + The only exception to this being the -llib directive, which stays + at the end of the line (from Spider Boardman). + + added SVR4-ish /opt directories to path list (ADO) + + Added backslash escapes within evals in Typedef.U to prevent problems + when the assigned variables have space in them (such as 'int *')... + + Force compile-link test for dl* routines since those symbols might lie + in crt0.o, and not in any other library (ADO) + + Improved comments about the Gconvert macro and forced a compile-link + test since the gconvert routine may exist but be unusable because + it would refer to otherwise missing routines... Sigh! (ADO) + + Made cc and ccflags optional dependencies in several units. + + Added knowledge of the O_NONBLOCK symbol in d_open3.U (required for + non-blocking I/O support, which is now computed by the new nblock_io.U + unit). + + Use findhdr to find , to get the right one (ADO) + + Typo fix on ?C: line for FILE_bufsiz in d_stdstdio.U. + Also fixed unbalanced parenthesis and check whether FILE_cnt + and FILE_ptr can be assigned to, i.e. may be used as lvalues. (ADO) + + Typo fix, sytem -> system in d_time.U and d_times.U. + + Conditionally use const in test programs for i_db.U (ADO) + + Use setvar so hint file values can override our guesses in + i_pwd.U. (ADO) + + Removed <> characters from comments, per metalint suggestion + + Ensure ctrl-A characters are visible in prompt within the + mboxchar.U unit (WED) + + Removed harmful spaces in assignment for selecttype.U. + + Added lookup for correct signal name lookup + under linux. That's probably as far as we'll get to support + those idiosyncracies. + + Obsoleted KEEPALIVE in favor of CAN_KEEPALIVE for consistency + with the 3.0 naming scheme. + + New metaconfig -G option to include a GNU configure-like + wrapper over the generated Configure script. That way, + people with a GNU background will be able to use (some) of + the GNU configure options to configure the package. The + wrapper computes suitable Configure options and then launches + that script. + + Manual page for metaconfig now documents the new -G option, + includes an extended description of the Csym.U unit and + mentions what a compile-link test line should look like. + + Metalint will now check : comments line for potential danger, + since those lines are really interpreted by the shell. Therefore, + unbalanced quotes could cause huge parts of the Configure script + to be ignored at run time, yielding weird results. Anyway, + metalint will tell you about them. + + Two new files: a new unit, and the GNU configure-like wrapper. + +. Files changed: + + * Jmakefile: Re-ordered macros, moving the install at the end. + + * bin/packinit.man: Fixed a typo. + + * jmake/files/Jmake.rules: Install of script man pages can now cope + with missing files. The clobber target now removes the .config + directory as well. + + * jmake/jmake.SH: All error messages are now prefixed with the + program name. + + * mcon/Jmakefile: Installs the GNU configure-like front-end to + Configure. + + * mcon/U/Csym.U: Re-arranged compile line to include ldflags before + objects. Added quotes for OS/2 support. + + * mcon/U/libs.U, mcon/U/Loc.U, mcon/U/Guess.U, mcon/U/Oldconfig.U, + mcon/U/libc.U: Now knows about OS/2 platforms. + + * mcon/U/Head.U: Added SVR4-ish /opt directories to path list (ADO). + OS/2 platforms are using another path separator. + + * mcon/U/Typedef.U: Added backslash escapes within evals to prevent + space problems. + + * mcon/U/d_safebcpy.U, mcon/U/d_wifstat.U, mcon/U/d_setpgrp.U, + mcon/U/ccflags.U, mcon/U/d_safemcpy.U: Re-arranged compile line to + include ldflags before objects. + + * mcon/U/d_dlerror.U, mcon/U/d_dlopen.U: Force compile-link test + since symbol might lie in crt0.o (ADO). + + * mcon/U/d_gconvert.U: Improved comments about the Gconvert macro + (ADO). Force compile-link test since it may exist but be unusable + (ADO). + + * mcon/U/d_volatile.U, mcon/U/d_sgndchr.U, mcon/U/d_scannl.U, + mcon/U/d_keepsig.U: Made cc and ccflags optional dependencies. + + * mcon/U/d_open3.U: Added knowledge of the O_NONBLOCK symbol. + + * mcon/U/d_shmat.U: Use findhdr to find , to get the right + one (ADO). + + * mcon/U/d_stdstdio.U: Typo fix on ?C: line for FILE_bufsiz. Fixed + unbalanced parenthesis (ADO). Check whether FILE_cnt and FILE_ptr + can be assigned to (ADO). + + * mcon/U/d_times.U, mcon/U/d_time.U: Typo fix, sytem -> system. + + * mcon/U/i_db.U: Conditionally use const in test programs (ADO). + + * mcon/U/i_pwd.U: Use setvar so hint file values can override our + guesses (ADO). + + * mcon/U/i_sysfile.U: Removed <> characters from comment, per + metalint suggestion. + + * mcon/U/mboxchar.U: Ensure ctrl-A characters are visible in prompt + (WED). + + * mcon/U/nblock_io.U, mcon/configure: Created. + + * mcon/U/selecttype.U: Removed harmful spaces in assignment. + + * mcon/U/sig_name.U: Added lookup for linux. + + * mcon/U/sockopt.U: Obsoleted KEEPALIVE in favor of CAN_KEEPALIVE for + consistency. + + * mcon/man/mconfig.SH: Added extra nroff escapes at line heads to + keep leading dots. Documented new -G option. Extended description + of the Csym.U unit. Now mentions what a compile-link test line + should look like. + + * mcon/man/mlint.SH: Added two new warnings for : comments lines in + Configure. + + * mcon/mconfig.SH: New -G option. + + * mcon/pl/cosmetic.pl: Added support for new -G option. + + * mcon/pl/lint.pl: Will now check : comments line for potential + danger. + + * pat/Jmakefile: Was missing an entry for the patlog program. + +Fri May 12 14:39:16 METDST 1995 Raphael Manfredi + +. Description: + + Regenerated Configure with pre-release of PL54. + + Updated my e-mail address in all manual pages. I had forgotten + about that in my previous patch. + + Various fixes in units from Andy Dougherty. Thanks to him and + to the efficient perl5-porters team that strive to port perl5 + to every possible existing platform on Earth, hence making + Configure more and more robust ;-). Here are Andy's fixes: + + . split awk command onto two lines for older awks + . fixed C test program to bypasss gcc builtin type checks + . deleted tabs that caused some /bin/sh to core dump + . cleaned up and extended osvers for DEC OSF/1 + . added MachTen detection + . protect against spaces in "uname -m" output + . extended for more intimate DB probing + . made more robust [ng]dbm units by checking both header + and libraries for features + . can now grok linux nm output with leading __IO + . added support for linux ELF output, using 'W' for alias + . now looks for too + . ensure that ./mips always exists + + Added -K option for experts. That Configure option should only + be used when you know what you are doing. The config.sh reload + logic now knows about new -K switch so that you now have to say: + Configure -dK + to get the old + Configure -d + behaviour. + + Configure now checks for a valid C compiler and that the + specified ccflags and ldflags are coherent with the choice + of the C compiler. It aborts if the C compiler does not + work (since it might be used for feature testing), but only + offers to abort when a flag inconsistency is detected. + Contributed by Tye McQueen (again!). + + Complete rewrite of d_stdstdio.U by Tye McQueen to fit modern + systems. The USE_STD_STDIO symbol has been obsoleted by the + new USE_STDIO_PTR symbol. Also, access to _ptr, _cnt and + _base fields in the FILE structure should be made only via the + new metaconfig macros FILE_ptr, FILE_cnt, etc... + + Made sure only most recent version of shared lib is picked. + This is for systems where libc.so.3 and libc.so.13 might + co-exist. We really need to pick the second one, whereas the + previous alphabetic sort was picking the first. + + Final "nm -p" check now uses xscan and xrun like everybody. + It used to do its checking manually. Using xscan and xrun allows + for the printing of the busy dots while scanning. + + The patpost script will now add an explicit From: header line + pointing to the maintainer address, as configured in your + .package. This is to prevent broken inews to insert the hostname + where patpost is ran, which might not be visible from the outside. + +. Files changed: + + * pat/pat.man, bin/packinit.man, jmake/jmake.man, kit/kitpost.man, + bin/manilist.man, kit/makedist.man, jmake/jmkmf.man, kit/manifake.man, + , dist.man: Updated my e-mail address. + + * mcon/U/Cppsym.U: Split awk command onto two lines for older awks + (ADO). + + * mcon/U/Csym.U: Fixed C test program to bypasss gcc builtin type + checks (ADO). + + * mcon/U/Inhdr.U: Deleted tabs that caused some /bin/sh to core dump + (ADO). + + * mcon/U/Oldconfig.U: Config.sh reload logic now knows about new -K + switch. Cleaned up and extended osvers for DEC OSF/1 (ADO). Added + MachTen detection (ADO). + + * mcon/U/Options.U: Added -K option for experts. + + * mcon/U/archname.U: Protect against spaces in "uname -m" output + (ADO). + + * mcon/U/cc.U: May now abort Configure when cc does not work. + + * mcon/U/ccflags.U: Now checks for cc/ccflags/ldflags coherency. + + * mcon/U/d_casti32.U: Made sure cc and ccflags are conditional + dependencies. + + * mcon/U/d_castneg.U: Made sure cc and ccflags are conditional + dependencies. Added improved test case for Interactive Unix. + + * mcon/U/d_stdstdio.U: Complete rewrite by Tye McQueen to fit modern + systems. + + * mcon/U/d_voidsig.U: Made cppflags dependency optional. + + * mcon/U/i_db.U: Extended for more intimate DB probing (ADO). + + * mcon/U/i_gdbm.U, mcon/U/i_ndbm.U, mcon/U/i_dbm.U: Made more robust + by checking both header and lib (ADO). + + * mcon/U/libc.U: Made sure only most recent version of shared lib is + picked. Final "nm -p" check now uses xscan and xrun like everybody. + Can now grok linux nm output with lead __IO (ADO). Added support for + linux ELF output, using 'W' for alias (ADO). + + * mcon/U/sig_name.U: Now looks for too (ADO). + + * mcon/U/usrinc.U: Ensure that ./mips always exists (ADO). + + * mcon/man/mconfig.SH: Documented new -K switch for knowledgeable + users. + + * pat/patpost.SH: Added explicit From: header line pointing to the + maintainer. + +Tue Mar 21 09:55:57 MET 1995 Raphael Manfredi + +. Description: + + Regenerated Configure to reflect my email address change. I moved + from ACRI to HP, and my email is now: . + The "critical" nature of this patch is due to that mere fix. + + Jmake was not working at all on HP-UX due to the way their cpp + systematically removes trailing backslashes in text. The new + fixcpp script is now a wrapper over cpp to first escape those + backslashes that should be preserved accross cpp before feeding + it with the text of the Jmakefile... + + Suppressed extra argument to NormalProgramTarget call in jmake rules. + + Definition of the paths variable in Head.U wrongly added spurious + ':' chars. Thanks to Karst Koymans for + pointing it out. + + Swapped two first arguments of memcpy() calls for memcpy safe + overlapping copy tests. Indeed, the memcpy() calling sequence used + was the same as bcopy(), but the first two arguments should be + swapped to preserve the same semantics. + + Continued fix for NeXT NIS/NetInfo handling, from Graham Stoney. + + Two new files. + +. Files changed: + + * jmake/Jmakefile: Now installs new fixcpp script in the private + libdir. + + * jmake/files/Jmake.rules: Suppressed extra argument to + NormalProgramTarget call. + + * jmake/fixcpp.SH, mcon/U/d_wifstat.U: Created. + + * jmake/jmake.SH: Now invokes cpp through new fixcpp script. First + pass now skips cpp comments alltogether. + + * mcon/U/Head.U: Definition of paths wrongly added spurious ':' chars. + + * mcon/U/d_safemcpy.U: Swapped two first arguments of memcpy() calls. + + * mcon/U/nis.U: Continued fix for NeXT NIS/NetInfo handling. + +Wed Feb 15 15:23:06 MET 1995 Raphael Manfredi + +. Description: + + This patch only contains random cleanup and minor fixes that were + brought to my attention on the dist-users list. + + Regenerated Configure with pre-release of 3.0 PL51, since it + was a little outdated. + + Wayne Davison's changes: + . now clearer about how to edit config.sh at the end of Configure. + . Getfile was not working if ~'s allowed with d_portable on + . Instruct.U: author name now appears at the end of a paragraph + + Andy Dougherty adapted osvers computation for AIX. He also + fixed mansrc.U where I had mistakenly duplicated /usr/local/man/man1. + He added /opt/man/man1 to the lookpath instead, a change originating + from Tye McQueen . + + Architecture name is now computed by a separate unit. This allows + authors to precompute it in a hint file, while warning the user + when the machine's architecture name changes (because for instance + the OS was upgraded), preventing mistakes. + + Now correctly handles NeXT using NIS rather than NetInfo, thanks + to a patch sent by Graham Stoney . + + One new file (unit archname.U). + +. Files changed: + + * mcon/U/Finish.U: Now clearer about how to edit config.sh at the + prompt (WED). + + * mcon/U/Getfile.U: Was not working if ~'s allowed with d_portable on + (WED). + + * mcon/U/Instruct.U: Author name now appears at the end of the + paragraph (WED). + + * mcon/U/Oldconfig.U: Adapted osvers computation for AIX (ADO). + + * mcon/U/archlib.U: Architecture name is now computed by a separate + unit. + + * mcon/U/archname.U: Created. + + * mcon/U/mansrc.U: Was mistakenly duplicating /usr/local/man/man1 + (ADO). Added /opt/man/man1 to the lookpath (ADO). + + * mcon/U/nis.U: Now correctly handles NeXT using NIS rather than + NetInfo. + +Mon Jan 30 15:59:00 MET 1995 Raphael Manfredi + +. Description: + + The dist-3.0 package now works with perl 5.0. I have made perl 5.0 + the default perl on my machine and ran the whole set of pat* tools, + jmake and metaconfig without any trouble so far. However, you need + a patched-up version of perl 5.0 PL0, as explained in README. + + This set of patches is mainly an integration of Wayne Davison's + changes for trn. His changes are flagged as WED. + + Begin.U: + Avoid an empty rmlist: systems might choke on it (WED). + + Config_h.U: + Typo fixes in leading config.h comment (WED). + + Oldconfig.U: + Update code for myuname changed (WED). + + Configure can now handle installation prefix changes. I have + slightly adapted the changes proposed by Wayne, introducing two + new special units (Prefixit.U and Prefixup.U) to factorize code. + + d_attribut.U: + Test C program now includes (WED) + + page.U: + Ensure dflt gets initialized in case no pagers are found (WED) + + prefix.U: + Save off previous prefix value in oldprefix if changed (WED) + Added the INSTALLPREFIX define for C programs to use (WED) + + Archname is now systematically recomputed. This avoids problem when + the user changes his mind about the OS name. + + Now looks for POSIX regcomp() routine, and for , thanks + to Sidney C. Smith . + + New installmanfmt and AFS-lookup for formatted man pages, derived + from what is done for troffed man pages. + + New prefixexp variable holding a fully expanded prefix, in case + they use ~name expansion in their prefix. + + Documented new special units Prefixit.U and Prefixup.U. + + Clean-up and workarounds for perl 5.0 PL0 port: + Removed old "do name()" routine call constructs. + Forgot to localize the spaces variable. + Random clean-up in &record_obsolete. + + Three new files. + +. Files changed: + + * mcon/U/Begin.U: Avoid an empty rmlist: systems might choke on it + (WED). + + * mcon/U/Config_h.U: Typo fixes in leading config.h comment (WED). + + * mcon/U/Oldconfig.U: Unit Options.U now exports file optdef.sh, not + a variable. Update code for myuname changed (WED). + + * mcon/U/Options.U: This unit now exports file optdef.sh, not a + variable. + + * mcon/U/i_regex.U, mcon/U/Prefixit.U, mcon/U/Prefixup.U: Created. + + * mcon/U/archlib.U: Archname is now systematically recomputed. Can + now handle installation prefix changes (from WED). + + * mcon/U/mansrc.U, mcon/U/scriptdir.U, mcon/U/lib.U, mcon/U/privlib.U, + , mcon/U/bin.U: Can now handle installation prefix changes (from WED). + + * mcon/U/d_attribut.U: Test C program now includes (WED). + + * mcon/U/d_regcmp.U: Now looks for POSIX regcomp() routine. + + * mcon/U/manfmt.U: New installmanfmt and AFS-lookup for formatted man + pages. Can now handle installation prefix changes (from WED). + + * mcon/U/pager.U: Ensure dflt gets initialized in case no pagers are + found (WED). + + * mcon/U/prefix.U: New prefixexp variable holding a fully expanded + prefix. Save off previous prefix value in oldprefix if changed + (WED). Added the INSTALLPREFIX define for C programs to use (WED). + + * mcon/U/rootid.U: Now only prints a single empty line when + outputting something. + + * mcon/man/mconfig.SH: Documented new special units Prefixit.U and + Prefixup.U. + + * mcon/pl/configure.pl, mcon/pl/eval.pl: Removed old "do name()" + routine call constructs. + + * mcon/pl/cosmetic.pl: Forgot to localize the spaces variable. + + * mcon/pl/obsolete.pl: Random clean-up in &record_obsolete. + +Wed Jan 11 17:03:22 MET 1995 Raphael Manfredi + +. Description: + + Regenerated Configure with pre-release of metaconfig PL45 to + benefit from the new install program lookup. From now on, the + supplied install.SH script will not be used if a BSD-compatible + install executable is found on your host (to accelerate the whole + install procedure). + + Regenerated many Makefile.SH files with pre-release of jmake PL45 + to correctly handle the new install and installdir configuration + variables. + + Updated the Wishlist file. + + New jmake macros. Also the MakeDirs macro was modified to benefit + from the information gathered by Configure concerning the way to + install nested directories (uses the new installdir variable). + + As a consequence, Makefile.SH files now pre-compute INSTALL and + INSTALLDIR variables before substituting (concerns jmake-generated + makefiles). + + Moved path stripping from d_portable.U to end of Configure. This + lets Configure use $vi and $perl, etc... set to their fully + qualified path name, hence making it easier for units to know + whether a particular program was located. Formerly, you had to + use $_vi, $_perl, etc... in case they asked for portability, which + stripped out executable paths. + + New cc vs. cpp symbol checking, as well as more cpp symbols in + the attribute list. Configure will now try to determine separately + symbols defined by cpp and by the cc wrapper, letting you know about + what is defined and by whom. Thanks to Jarkko Hietaniemi for this + suggestion. + + Added support for escaping answers to skip various checks in the + Getfile.U unit. For instance, you may now say: + fn='/fe~(foo)' + . ./getfile + and let them answer only fully qualified paths OR the string 'foo'. + You may supply a comma-separated list between the parenthesis. See + the manual page or the new install.U unit for more information. + + Modified message issued after file expansion in the Getfile unit. + + Protected various "sh -c" calls within backquotes for Linux and + SGI shells (to prevent an "ambiguous output redirection" message). + Thanks to Xavier Le Vourch for suggesting it. + + Added & escape allowing user to turn on -d from the prompt. Several + people have expressed the need for such a feature, arguing that + once they have re-run a Configure script to fix the answer to a + particular question, they would like to have the remaining of the + script ran as if -d had been given to Configure. Well, they now + may reply '& -d' at the Myread prompt to turn -d on. + + New -O option allowing -D and -U to override config.sh setttings. + This may be used to alter particular variables but still re-use + most of the previously guessed-at ones. Still, this may produce + inconsistencies and therefore is not the default behaviour (the + -D and -U switches have no effect by default if a previous config + file is loaded). + + Therefore, file optdef.sh is no longer removed after sourcing from + the UU directory. + + Changed gcc checking message to a more explicit one (WED) + Call ./mips instead of just mips (WED) + Use 'test -f' instead of 'test -r' for exec-only cat progs (WED) + Fixed typo in the d_attribut variable (ADO) + + New unit install.U to locate BSD-compatible install programs. + New unit poll.U to check for the poll() routine availability. + + Allows hint files to specify their own value for 'ranlib', to + overcome a bug in the NeXT ranlib program. Suggested by + Andreas Koenig on the perl5-porters + mailing list. Thanks! + + Now sets sbrksmart to undef explicitely when lacking sbrk(). + Forgot a cast when using return value from sbrk(). Both fixes + reported by Xavier Le Vourch . + + Now allows @if statements for the add.Config_sh unit inclusion. + + Metaconfig will now tell users about possible extra file-extension + lookups they have requested via 'packinit'. + +. Files changed: + + * jmake/files/Jmake.rules: New macros ShellScriptTargetExt and + SimpleShellScriptTargetExt. Directory installation is now made via + INSTALLDIR (Configure). + + * jmake/files/Jmake.tmpl: Now pre-computes INSTALL and INSTALLDIR + variables. + + * mcon/U/Config_sh.U: Moved path stripping from d_portable.U to end + of Configure. + + * mcon/U/Cppsym.U: New cc vs. cpp symbol checking suggested by JHI. + Added more cpp symbols (JHI). + + * mcon/U/Getfile.U: Added support for escaping answers to skip + various checks. Modified message issued after file expansion. + + * mcon/U/Instruct.U: Now documents the & escape to turn -d on at the + read prompt. + + * mcon/U/Loc.U: Protected "sh -c" within backquotes for Linux and + SGI. Added path lookup for the 'comm' program. + + * mcon/U/Myread.U: Added & escape allowing user to turn on -d from + the prompt. + + * mcon/U/Oldconfig.U: Added quotes around the INITPROG variable + (ADO). Allows variable overriding after config file loading. + + * mcon/U/Options.U: New -O option allowing -D and -U to override + config.sh setttings. File optdef.sh is no longer removed after + sourcing. + + * mcon/U/cc.U: Changed gcc checking message to a more explicit one + (WED). + + * mcon/U/d_attribut.U: Fixed typo in the d_attribut variable (ADO). + + * mcon/U/d_keepsig.U: Protected "sh -c" within backquotes for Linux + and SGI. + + * mcon/U/install.U, mcon/U/d_poll.U: Created. + + * mcon/U/d_portable.U: Executable path stripping moved to the end in + Config_sh.U. + + * mcon/U/d_safebcpy.U: Added 'ldflags' to the test compile line (ADO). + + * mcon/U/defeditor.U: Can now use the 'vi' variable since path + stripping is deferred. + + * mcon/U/libpth.U: Call ./mips instead of just mips (WED). + + * mcon/U/perlpath.U, mcon/U/mansrc.U, mcon/U/mailer.U: Can now use + Loc variables since path stripping is deferred. + + * mcon/U/orderlib.U: Allows hint files to specify their own value for + 'ranlib'. + + * mcon/U/sbrksmart.U: Now sets sbrksmart to undef explicitely when + lacking sbrk(). Forgot a cast when using return value from sbrk(). + + * mcon/U/spitshell.U: Use 'test -f' instead of 'test -r' for + exec-only cat progs (WED). Protected "sh -c" within backquotes for + Linux and SGI. + + * mcon/U/voidflags.U: Cosmetic change to avoid spurious blank lines + when using -s. + + * mcon/man/mconfig.SH: Documents new -O option and new Getfile escape + supports. Documents the & escape in Myread and the new cc symbol + lookup. + + * mcon/pl/configure.pl: Now allows @if statements for the + add.Config_sh unit inclusion. + + * mcon/pl/wanted.pl: Added % in front of hash table names for perl5's + each() (ADO). Tell users about possible extra file-extension lookups. + +Mon Oct 31 10:57:05 MET 1994 Raphael Manfredi + +. Description: + + It used to be that option processing was done before Configure + initializations were performed, because Options was listed in + the dependency line of Init.U. However, this was wrong because + -D and -U command line switches were then unable to override any + default setting done in Myinit.U, which is counter-intuitive at + best. Thanks to Andras Salamon for pointing + this out. + + I therefore created a new unit Begin.U, which clearly marks + the beginning of the configuration questions (so End.U now + has its pending unit). On that unit, we list Myinit followed + by Options on the ?MAKE: line, so that option processing + comes after user-defined or default initializations but before + the real interactive start (which is mandatory for a correct + Configure -h processing, for instance). + + A few units were making use of variables set up in Options.U + and made visible. However, those did not need to list Options + in their ?MAKE: line due to the way metalint performs its visible + symbol lookup (by following dependencies recursively and implicitely + placing Init at the top). Since Options is no longer a dependency + of Init, Myread.U and Csym.U now explicitely mention Options in + their dependency line. + + Also, the leading comment in Chk_MANI.U now explains how this + unit gets included into the Configure script. There used to be + an explaination there, but it was no longer accurate. + + One new unit file (Begin.U). + +. Files changed: + + * mcon/U/Begin.U: Created. + + * mcon/U/Chk_MANI.U: Now lists Begin instead of Myinit in its + dependencies. Leading comment now explains how this unit is included. + + * mcon/U/Myread.U, mcon/U/Csym.U: Added Options to the MAKE line + since it's no longer in Init.U. + + * mcon/U/Init.U: Removed Options from MAKE to prevent Init overrides. + Option processing now done after Myinit thanks to new Begin.U. Moved + "Beginning of configuration questions" to Begin.U. Moved signal + trapping instruction to Begin.U as well. + + * mcon/U/Myinit.U: Leading comment states this unit comes before + option processing. + +Sat Oct 29 19:05:42 MET 1994 Raphael Manfredi + +. Description: + + I forgot to quote $@ to protect against "evil" characters. + Unfortunately, this causes Configure to output an error message + when calling the created 'tr' script (which it does all the time + given the leading '.' in PATH) with arguments like '\012'. The + final + exec tr $@ + line causes a 'tr' failure because it does not understand the + arguments it is given. Saying + exec tr "$@" + fixes the problem since then the original quotes are "propagated" + to the new call. + + The amazing thing is that I have tested this, but apparently the + simple Configure script I generated for that purpose did not make + use of the "tr '/012' ' '" construct. Hence I missed it. Sorry. + +. Files changed: + + * mcon/U/Tr.U: Forgot to quote $@ to protect against "evil" + characters. + +Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi + +. Description: + + Regenerated Configure with metaconfig 3.0 PL35 to benefit from + the lattest enhancements. Unfortunately, I have not pre-installed + the patch relased before regenerating, so Configure is still behind + the current patchlevel. I hope you don't mind ;-) + + The good news is: I've made sure all the scripts compile fine + with perl 5.0. This involved fixing an open precedence problem + in manilist, and some escapes in strings and regexps to make + sure all dangerous '@' are protected since they now interpolate. + I also fixed perload since perl5's packages are now introduced + by '::' instead of the single quote. + + The bad news is: it's not guaranteed to work. At least with the + pre-release version of perl 5.0 I have, metaconfig (the dataloaded + version) fails, and I've not been able to narrow down the problem + to a small test-case so I don't know what's happening. The non + dataloaded version appears to be running fine, but if you get + strange problems, make sure you use perl 4.0 PL36 before sending + me a bug report. :-) + + Added support for user-defined C and shell file extensions. This + was needed in perl5 for instance (.xs files are containing C + symbols and metaconfig should really look at those). Well, you + may now add as many extensions (C or SH) from within packinit. + + Packinit also asks whether a ChangeLog file is to be managed. + This is a new feature relying on the new patlog script. If you + don't ask for a ChangeLog file, you should get the old behaviour. + If you do, well you will have to read the documentation to know + what changes it involves (mainly at the user-interface level when + running 'patmake', which now calls 'patlog'). Don't forget to + add ChangeLog to your MANIFEST.new before running patmake anyway. + + Optionally, you can include the RCS logs within your ChangeLog + file, and they will follow the description (what you are reading + now) which normally appears within the Description: section of + the patch itself. + + Packinit now creates new variables cext, shext, changelog and + changercs in the .package file to handle user-defined file extensions + and the ChangeLog file. + + Added new RemoteDependency rule for jmake. + + Don't use rootid as a variable, it is known by metaconfig and + results in having Configure compute the root uid when it's not + needed. Renamed it to rootmsgid to avoid this kind of problem. + + Added ?F: lines in units creating files for metalint checking. + This incurred many small changes in units where things like + if usg; then + were written when in fact meaning: + if ./usg; then + Well, I know Configure sets '.' at the beginning of the PATH, but + since metalint now systematically warns about such abuse (provided + files are declared in the ?F: lines in the special unit defining + them), it was the only way to shut up metalint. + + Metalint also now checks for variables used as ${var}. + + Symbols ardent and titan are now looked at for cpp definition. (ADO) + + Make sure ENV is unset before calling /bin/ksh. Not doing this + is known to produce strange results. For instance, if one has + a ~/.kshrc aliasing 'cd' to something else. Configure might + get confused and do the wrong thing. Not setting ENV ensures + no such startup file will be used. Of course, this does not + work if you say 'ksh Configure', but then you are supposed to + know what you are doing. + + The loc script can now perform safe wildcard searching. (ADO) + + The Oldconfig.U unit was merged with the version used for perl5's + Configure (ADO). Be careful if you use hints, the behaviour you + will now get might not be fully backward compatible. Since the + Author currently does not have any such package, he did not test + that specific feature. You have been warned. (But everything + should be fine). + + Configure now protects variable definitions with spaces in them, + so that people saying: + Configure -D cc='cc -posix' + will get what they expect. + + Added checks for secure setuid scripts. (Tye McQueen) + + Spurious single quote in the lex.U unit could cause Configure + to crash, reported by Xavier Le Vourch . + Indeed, the unit was saying something like + : .... and they'll ... + so the shell happily began to eat everything up to the next + single quote it could found, resulting in weird behaviours... + + Now looks for shared libraries before anything else and + removed the old broken thislib/thatlib processing in libs.U. + This has been tested in the perl5 distribution and is believed + to be better than the previous scheme. (ADO) + + New Tr unit to convert to/from lowercase. Whenever you need + to say: + tr '[A-Z]' '[a-z]' + or the other way round, add Tr in your dependency line and + say something like + ./tr '[A-Z]' '[a-z]' + i.e. you need to call a local tr script that will trap the + arguments and possibly call + tr '[:upper:]' '[:lower:]' + if your machine supports this. Otherwise, with a non-ascii + character set, you will get strange results (HP is know + to exercise this, thanks to Andreas Sahlbach + for letting me know about it). + + ranlib checking is more accurate now (ADO) + + Newer RCS programs chop trailing spaces in log messages, and + that could cause 'patcil -s' to fail stripping the RSC logs. + + separated V/E and v/e commands in the patcil built-in prompter. + The new 'v' command now edits the file being patcil'ed. + added hook for 'V' command (not implemented yet) + The 'e' and 'E' commands have retained their semantics. + + 19 new files, mostly metaconfig units. + +. Files changed: + + * bin/manilist.SH: Fixed open precedence problem for perl5. + + * bin/packinit.SH: Added support for user-defined C and shell file + extensions. Now asks whether a ChangeLog file is to be managed. + + * bin/packinit.man: Added new variables cext, shext, changelog and + changercs. + + * bin/perload: Added minimal support for perl5 dataloading. + + * dist.man: Mentions new patlog script and ChangeLog file. + + * jmake/files/Jmake.rules: Added RemoteDependency rule. + + * jmake/jmake.SH, pat/patnotify.SH, mcon/pl/depend.pl: Added various + escapes in strings for perl5 support. + + * kit/kitpost.SH: Don't use rootid as a variable, it is known by + metaconfig. + + * mcon/U/bitpbyte.U, mcon/U/d_NOFILE.U, mcon/U/mkdep.U, + mcon/U/d_PORTAR.U, mcon/U/alignbytes.U, mcon/U/byteorder.U, + mcon/U/Finish.U, mcon/U/nlist_pfx.U, mcon/U/charorder.U, + mcon/U/d_getpagsz.U, mcon/U/ptrsize.U, mcon/U/intsize.U, + mcon/U/Getfile.U, mcon/U/Extract.U, mcon/U/Myread.U, mcon/U/Whoa.U, + mcon/U/longsize.U, mcon/U/floatsize.U, mcon/U/Config_sh.U, + mcon/U/cppstdin.U, mcon/U/doublesize.U, mcon/U/Findhdr.U, + mcon/U/i_varhdr.U, mcon/U/charsize.U: Added ?F: line for metalint + file checking. + + * mcon/U/Cppsym.U: Added ?F: line for metalint file checking. New + symbols ardent and titan (ADO). + + * mcon/U/Filexp.U: Added ?F: line for metalint file checking. Added + HOME to the ?T: line since metalint now checks ${HOME}. + + * mcon/U/Guess.U: Added ?F: line for metalint file checking. Call + ./xenix explicitely instead of relying on PATH. + + * mcon/U/Head.U: Make sure ENV is unset before calling /bin/ksh. + + * mcon/U/Setvar.U, mcon/U/Inhdr.U, mcon/U/Inlibc.U: Call ./whoa + explicitely instead of relying on PATH. + + * mcon/U/Loc.U: Added ?F: line for metalint file checking. Be + careful and guard against wildcard searching (ADO). + + * mcon/U/Oldconfig.U: Added ?F: line for metalint file checking. + Merged with the version used for perl5's Configure (ADO). + + * mcon/U/Options.U: Ensure option definition file is removed before + appending. Protect variable definitions with spaces in them. + + * pat/patlog.SH, mcon/U/Tr.U: Created. + + * mcon/U/Typedef.U: Don't clobber visible 'val' variable, use + 'varval' instead. + + * mcon/U/Warn_v7EXT.U, mcon/U/Warn_v7ND.U: Call ./v7 explicitely + instead of relying on PATH. + + * mcon/U/abortsig.U, mcon/U/d_bsdjmp.U: Call ./usg explicitely + instead of relying on PATH. + + * mcon/U/d_attribut.U, mcon/U/d_gconvert.U, mcon/U/d_drem.U, + mcon/U/d_locconv.U, mcon/U/d_mkfifo.U, mcon/U/d_fmod.U, + mcon/U/d_linuxstd.U, mcon/U/d_pathconf.U, mcon/U/archlib.U, + mcon/U/d_dlerror.U, mcon/U/d_sysconf.U, mcon/U/i_dld.U, + mcon/U/modetype.U: Created by ADO. + + * mcon/U/cc.U: Detect gcc even when not called as 'gcc' (ADO). + Simplified gcc version checking (ADO). Added ?F: line for metalint + file checking. + + * mcon/U/ccflags.U: Gcc versionning no longer relies on the C + compiler's name. Simplified check for gcc version checking (ADO). + + * mcon/U/cpp_stuff.U: Now uses cppstdin instead of plain cpp for + consistency (ADO). Remove temporary files when done. + + * mcon/U/d_casti32.U: Declare signal handler correctly (ADO). + + * mcon/U/d_castneg.U: Don't forget to tell user about compilation + failures (ADO). Declare signal handler correctly using 'signal_t' + (ADO). + + * mcon/U/d_closedir.U, mcon/U/d_safemcpy.U, mcon/U/d_isascii.U: Added + 'ldflags' to the test compile line (ADO). + + * mcon/U/d_dosuid.U: Added checks for secure setuid scripts (Tye + McQueen). + + * mcon/U/d_keepsig.U, mcon/U/d_eofpipe.U, mcon/U/d_normsig.U, + mcon/U/d_tzmin.U: Call ./bsd explicitely instead of relying on PATH. + + * mcon/U/d_gethname.U: Call ./xenix explicitely instead of relying on + PATH. + + * mcon/U/d_newsadm.U: Call ./eunice explicitely instead of relying on + PATH. + + * mcon/U/d_setpgrp.U: Added 'ldflags' to the test compile line (ADO). + Call ./usg explicitely instead of relying on PATH. + + * mcon/U/registers.U, mcon/U/shm_for.U, mcon/U/d_speedopt.U: Call + ./Cppsym explicitely instead of relying on PATH. + + * mcon/U/d_time.U: Now uses new Typedef unit to compute type + information (ADO). + + * mcon/U/groupstype.U: No longer uses Setvar to set 'groupstype' + (ADO). Typo fix in the word 'argument' (ADO). + + * mcon/U/i_dirent.U: Failed scanning for 'd_namlen' with missing + (ADO). + + * mcon/U/i_neterrno.U: Forgot to initialize 'val' to an empty value + (ADO). + + * mcon/U/i_termio.U: Call ./usg and ./Cppsym explicitely instead of + relying on PATH. + + * mcon/U/lex.U: Spurious single quote could cause Configure to crash. + (reported by Xavier Le Vourch .). + + * mcon/U/libc.U: Now looks for shared libraries before anything else + (ADO). Added new nm output format (ADO). + + * mcon/U/libs.U: Removed old broken thislib/thatlib processing (ADO). + + * mcon/U/mailfile.U: The Loc unit was missing from the dependency + line. + + * mcon/U/myhostname.U: Call ./xenix explicitely instead of relying on + PATH. Now uses new Tr unit to convert to/from lowercase. + + * mcon/U/nametype.U: Call ./usg and ./bsd explicitely instead of + relying on PATH. + + * mcon/U/orderlib.U: Now performs a real small compile for accurate + checks (ADO). + + * mcon/U/package.U: Beware of non-ascii character sets when + translating case. + + * mcon/U/pager.U: Replaced Myread by Getfile in the dependency line. + + * mcon/U/prefshell.U: Added SHELL temporary since metalint now sees + ${SHELL}. + + * mcon/U/so.U: Now tells user how he can suppress shared lib lookup + (ADO). Removed echo at the top, since it's now in the here-doc (ADO). + + * mcon/U/ssizetype.U: Added ?F: line for metalint file checking. + Added 'ldflags' to the test compile line (ADO). + + * mcon/man/mconfig.SH: Added nroff protection for lines beginning + with '.'. Documents new ?F: line for file declarations. Added + example showing how ./loc can be used. + + * mcon/man/mlint.SH: Documents new ?F: lines and the related metalint + warnings. Removed statement in BUGS since all warnings may now be + shut. + + * mcon/man/mxref.SH: The leading .TH was referring to metaconfig. + + * mcon/pl/common.pl: Metaconfig and metaxref ignore ?F: lines from + now on. + + * mcon/pl/files.pl: Added user-defined file extension support for + lookups. + + * mcon/pl/lint.pl: Now extensively checks created files thanks to new + ?F: lines. + + * mcon/pl/locate.pl: Misspelled a 'closedir' as a 'close' statement. + + * pat/pat.SH: Now unlinks all the files created by patlog in bugs. + + * pat/pat.man: Documents new patlog script and the files it uses. + The RCS layer section has been extended slightly. + + * pat/patcil.SH: Now honors the VISUAL and EDITOR environment + variables. Newer RCS programs chop trailing spaces in log messages. + Separated V/E and v/e commands. New 'v' command to edit the file + being patcil'ed. Added hook for 'V' command (not implemented yet). + + * pat/patmake.SH: A lot of setup is now performed by patlog. Added + various escapes in strings for perl5 support. + diff --git a/Configure b/Configure new file mode 100755 index 0000000..e8906f2 --- /dev/null +++ b/Configure @@ -0,0 +1,3892 @@ +#! /bin/sh +# +# If these # comments don't work, trim them. Don't worry about any other +# shell scripts, Configure will trim # comments from them for you. +# +# (If you are trying to port this package to a machine without sh, +# I would suggest you have a look at the prototypical config_h.SH file +# and edit it to reflect your system. Some packages may include samples +# of config.h for certain machines, so you might look for one of those.) +# +# Yes, you may rip this off to use in other distribution packages. This +# script belongs to the public domain and cannot be copyrighted. +# +# Note: this Configure script was generated automatically. Rather than +# working with this copy of Configure, you may wish to get metaconfig. +# The dist package (which contains metaconfig) is available at +# http://sourceforge.net/projects/dist/ + +# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp ram $ +# +# Generated on Sun Feb 8 21:03:36 MET 2004 [metaconfig 3.0 PL70] + +cat >c1$$ <c2$$ </dev/null` + test "$me" || me=$0 + ;; +esac + +: Proper separator for the PATH environment variable +p_=: +: On OS/2 this directory should exist if this is not floppy only system ":-]" +if test -d c:/. ; then + if test -n "$OS2_SHELL"; then + p_=\; + PATH=`cmd /c "echo %PATH%" | tr '\\\\' / ` + OS2_SHELL=`cmd /c "echo %OS2_SHELL%" | tr '\\\\' / | tr '[A-Z]' '[a-z]'` + elif test -n "$DJGPP"; then + case "X${MACHTYPE:-nonesuchmach}" in + *cygwin) ;; + *) p_=\; ;; + esac + fi +fi + +: Proper PATH setting +paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin' +paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin" +paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin" +paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin" +paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb" +paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /usr/ccs/bin" +paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib" +paths="$paths /sbin /usr/sbin /usr/libexec" +paths="$paths /system/gnu_library/bin" + +for p in $paths +do + case "$p_$PATH$p_" in + *$p_$p$p_*) ;; + *) test -d $p && PATH=$PATH$p_$p ;; + esac +done + +PATH=.$p_$PATH +export PATH + +: shall we be using ksh? +inksh='' +needksh='' +avoidksh='' +newsh=/bin/ksh +changesh='' +if (PATH=.; alias -x) >/dev/null 2>&1; then + inksh=true +fi +if test -f /hp-ux -a -f /bin/ksh; then + needksh='to avoid sh bug in "here document" expansion' +fi +if test -d /usr/lpp -a -f /usr/bin/bsh -a -f /usr/bin/uname; then + if test X`/usr/bin/uname -v` = X4; then + avoidksh="to avoid AIX 4's /bin/sh" + newsh=/usr/bin/bsh + fi +fi +if test -f /osf_boot -a -f /usr/sbin/setld; then + if test X`/usr/bin/uname -s` = XOSF1; then + avoidksh="to avoid Digital UNIX' ksh" + newsh=/bin/sh + unset BIN_SH + fi +fi +case "$inksh/$needksh" in +/[a-z]*) + ENV='' + changesh=true + reason="$needksh" + ;; +esac +case "$inksh/$avoidksh" in +true/[a-z]*) + changesh=true + reason="$avoidksh" + ;; +esac +case "$inksh/$needksh-$avoidksh-" in +true/--) + cat <&2 +$me: Fatal Error: I can't find a Bourne Shell anywhere. + +Usually it's in /bin/sh. How did you even get this far? +Please contact me (Raphael Manfredi) at Raphael_Manfredi@grenoble.hp.com and +we'll try to straighten this all out. +EOM + exit 1 + ;; +esac + +: see if sh knows # comments +if `$sh -c '#' >/dev/null 2>&1`; then + shsharp=true + spitshell=cat + xcat=/bin/cat + test -f $xcat$_exe || xcat=/usr/bin/cat + if test ! -f $xcat$_exe; then + for p in `echo $PATH | sed -e "s/$p_/ /g"` $paths; do + if test -f $p/cat$_exe; then + xcat=$p/cat + break + fi + done + if test ! -f $xcat$_exe; then + echo "Can't find cat anywhere!" + exit 1 + fi + fi + echo "#!$xcat" >try + $eunicefix try + chmod +x try + ./try > today 2>/dev/null + if test -s today; then + sharpbang='#!' + else + echo "#! $xcat" > try + $eunicefix try + chmod +x try + ./try > today 2>/dev/null + if test -s today; then + sharpbang='#! ' + else + sharpbang=': use ' + fi + fi +else + echo " " + echo "Your $sh doesn't grok # comments--I will strip them later on." + shsharp=false + cd .. + echo "exec grep -v '^[ ]*#'" >spitshell + chmod +x spitshell + $eunicefix spitshell + spitshell=`pwd`/spitshell + cd UU + echo "I presume that if # doesn't work, #! won't work either!" + sharpbang=': use ' +fi +rm -f try today + +: figure out how to guarantee sh startup +case "$startsh" in +'') startsh=${sharpbang}${sh} ;; +*) +esac +cat >try < cmdline.opt <>cmdline.opt < cmdl.opt +$arg +EOC + arg_exp=`cat cmdl.opt` + args_exp="$args_exp$args_sep'$arg_exp'" + argn=`expr $argn + 1` + args_sep=' ' +done +# args_exp is good for restarting self: eval "set X $args_exp"; shift; $0 "$@" +# used by ./hints/os2.sh +rm -f cmdl.opt + +: produce awk script to parse command line options +cat >options.awk <<'EOF' +BEGIN { + optstr = "A:dD:eEf:hKOrsSU:V"; # getopt-style specification + + len = length(optstr); + for (i = 1; i <= len; i++) { + c = substr(optstr, i, 1); + if (i < len) a = substr(optstr, i + 1, 1); else a = ""; + if (a == ":") { + arg[c] = 1; + i++; + } + opt[c] = 1; + } +} +{ + expect = 0; + str = $0; + if (substr(str, 1, 1) != "-") { + printf("'%s'\n", str); + next; + } + len = length($0); + for (i = 2; i <= len; i++) { + c = substr(str, i, 1); + if (!opt[c]) { + printf("-%s\n", substr(str, i)); + next; + } + printf("-%s\n", c); + if (arg[c]) { + if (i < len) + printf("'%s'\n", substr(str, i + 1)); + else + expect = 1; + next; + } + } +} +END { + if (expect) + print "?"; +} +EOF + +: process the command line options +set X `for arg in "$@"; do echo "X$arg"; done | + sed -e s/X// | awk -f options.awk` +eval "set $*" +shift +rm -f options.awk + +: set up default values +fastread='' +reuseval=false +config_sh='' +alldone='' +error='' +silent='' +extractsh='' +override='' +knowitall='' +rm -f optdef.sh posthint.sh +cat >optdef.sh <&2 + error=true + fi + cd UU + shift;; + -h) shift; error=true;; + -r) shift; reuseval=true;; + -s) shift; silent=true; realsilent=true;; + -E) shift; alldone=exit;; + -K) shift; knowitall=true;; + -O) shift; override=true;; + -S) shift; silent=true; extractsh=true;; + -D) + shift + case "$1" in + *=) + echo "$me: use '-U symbol=', not '-D symbol='." >&2 + echo "$me: ignoring -D $1" >&2 + ;; + *=*) echo "$1" | \ + sed -e "s/'/'\"'\"'/g" -e "s/=\(.*\)/='\1'/" >> optdef.sh;; + *) echo "$1='define'" >> optdef.sh;; + esac + shift + ;; + -U) + shift + case "$1" in + *=) echo "$1" >> optdef.sh;; + *=*) + echo "$me: use '-D symbol=val', not '-U symbol=val'." >&2 + echo "$me: ignoring -U $1" >&2 + ;; + *) echo "$1='undef'" >> optdef.sh;; + esac + shift + ;; + -A) + shift + xxx='' + yyy="$1" + zzz='' + uuu=undef + case "$yyy" in + *=*) zzz=`echo "$yyy"|sed 's!=.*!!'` + case "$zzz" in + *:*) zzz='' ;; + *) xxx=append + zzz=" "`echo "$yyy"|sed 's!^[^=]*=!!'` + yyy=`echo "$yyy"|sed 's!=.*!!'` ;; + esac + ;; + esac + case "$xxx" in + '') case "$yyy" in + *:*) xxx=`echo "$yyy"|sed 's!:.*!!'` + yyy=`echo "$yyy"|sed 's!^[^:]*:!!'` + zzz=`echo "$yyy"|sed 's!^[^=]*=!!'` + yyy=`echo "$yyy"|sed 's!=.*!!'` ;; + *) xxx=`echo "$yyy"|sed 's!:.*!!'` + yyy=`echo "$yyy"|sed 's!^[^:]*:!!'` ;; + esac + ;; + esac + case "$xxx" in + append) + echo "$yyy=\"\${$yyy}$zzz\"" >> posthint.sh ;; + clear) + echo "$yyy=''" >> posthint.sh ;; + define) + case "$zzz" in + '') zzz=define ;; + esac + echo "$yyy='$zzz'" >> posthint.sh ;; + eval) + echo "eval \"$yyy=$zzz\"" >> posthint.sh ;; + prepend) + echo "$yyy=\"$zzz\${$yyy}\"" >> posthint.sh ;; + undef) + case "$zzz" in + '') zzz="$uuu" ;; + esac + echo "$yyy=$zzz" >> posthint.sh ;; + *) echo "$me: unknown -A command '$xxx', ignoring -A $1" >&2 ;; + esac + shift + ;; + -V) echo "$me generated by metaconfig 3.0 PL70." >&2 + exit 0;; + --) break;; + -*) echo "$me: unknown option $1" >&2; shift; error=true;; + *) break;; + esac +done + +case "$error" in +true) + cat >&2 <&1 +case "$silent" in +true) exec 1>/dev/null;; +esac + +: run the defines and the undefines, if any, but leave the file out there... +touch optdef.sh +. ./optdef.sh +: create the posthint manipulation script and leave the file out there... +touch posthint.sh + +: set package name +package=dist +first=`echo $package | sed -e 's/^\(.\).*/\1/'` +last=`echo $package | sed -e 's/^.\(.*\)/\1/'` +case "`echo AbyZ | tr '[:lower:]' '[:upper:]' 2>/dev/null`" in +ABYZ) spackage=`echo $first | tr '[:lower:]' '[:upper:]'`$last;; +*) spackage=`echo $first | tr '[a-z]' '[A-Z]'`$last;; +esac + +: Some greps do not return status, grrr. +echo "grimblepritz" >grimble +if grep blurfldyick grimble >/dev/null 2>&1 ; then + contains=contains +elif grep grimblepritz grimble >/dev/null 2>&1 ; then + contains=grep +else + contains=contains +fi +rm -f grimble +: the following should work in any shell +case "$contains" in +contains*) + echo " " + echo "AGH! Grep doesn't return a status. Attempting remedial action." + cat >contains <<'EOSS' +grep "$1" "$2" >.greptmp && cat .greptmp && test -s .greptmp +EOSS +chmod +x contains +esac + +: Find the path to the source tree +case "$src" in +'') case "$0" in + */*) src=`echo $0 | sed -e 's%/[^/][^/]*$%%'`;; + *) src='.';; + esac;; +esac +case "$src" in +'') src=/ + rsrc=/ + ;; +/*) rsrc="$src";; +*) rsrc="../$src";; +esac +if test -f $rsrc/Configure && \ + $contains "^package=$package$" $rsrc/Configure >/dev/null 2>&1 +then + : found it, so we are ok. +else + rsrc='' + for src in . .. ../.. ../../.. ../../../..; do + if test -f ../$src/Configure && \ + $contains "^package=$package$" ../$src/Configure >/dev/null 2>&1 + then + rsrc=../$src + break + fi + done +fi +case "$rsrc" in +'') + cat <&4 + +Sorry, I can't seem to locate the source dir for $package. Please start +Configure with an explicit path -- i.e. /some/path/Configure. + +EOM + exit 1 + ;; +../.) rsrc='..';; +*) + echo " " + echo "Sources for $package found in \"$src\"." >&4 + ;; +esac + +: script used to extract .SH files with variable substitutions +cat >extract <>extract <<'EOS' +echo "Doing variable substitutions on .SH files..." +if test -f "$SRC/MANIFEST"; then + set x `awk '{print $1}' <$SRC/MANIFEST | grep '\.SH'` +else + echo "(Looking for .SH files under the source directory.)" + set x `(cd "$SRC"; find . -name "*.SH" -print)` +fi +shift +case $# in +0) set x `(cd "$SRC"; echo *.SH)`; shift;; +esac +if test ! -f "$SRC/$1"; then + shift +fi +mkdir_p=' +name=$1; +create=""; +while test $name; do + if test ! -d "$name"; then + create="$name $create"; + name=`echo $name | sed -e "s|^[^/]*$||"`; + name=`echo $name | sed -e "s|\(.*\)/.*|\1|"`; + else + name=""; + fi; +done; +for file in $create; do + mkdir $file; +done +' +for file in $*; do + case "$SRC" in + ".") + case "$file" in + */*) + dir=`expr X$file : 'X\(.*\)/'` + file=`expr X$file : 'X.*/\(.*\)'` + (cd $dir && . ./$file) + ;; + *) + . ./$file + ;; + esac + ;; + *) + case "$file" in + */*) + dir=`expr X$file : 'X\(.*\)/'` + file=`expr X$file : 'X.*/\(.*\)'` + (set x $dir; shift; eval $mkdir_p) + sh <"$SRC/$dir/$file" + ;; + *) + sh <"$SRC/$file" + ;; + esac + ;; + esac +done +if test -f "$SRC/config_h.SH"; then + if test ! -f config.h; then + : oops, they left it out of MANIFEST, probably, so do it anyway. + . "$SRC/config_h.SH" + fi +fi +EOS + +: extract files and exit if asked to do so +case "$extractsh" in +true) + case "$realsilent" in + true) ;; + *) exec 1>&4;; + esac + case "$config_sh" in + '') config_sh='config.sh';; + esac + echo " " + echo "Fetching answers from $config_sh..." + cd .. + . $config_sh + test "$override" && . ./optdef.sh + echo " " + . UU/extract + rm -rf UU + echo "Extraction done." + exit 0 + ;; +esac + +: Eunice requires " " instead of "", can you believe it +echo " " +: Here we go... +echo "Beginning of configuration questions for $package." + +trap 'echo " "; test -d ../UU && rm -rf X $rmlist; exit 1' 1 2 3 15 + +: first determine how to suppress newline on echo command +echo " " +echo "Checking echo to see how to suppress newlines..." +(echo "hi there\c" ; echo " ") >.echotmp +if $contains c .echotmp >/dev/null 2>&1 ; then + echo "...using -n." + n='-n' + c='' +else + cat <<'EOM' +...using \c +EOM + n='' + c='\c' +fi +echo $n "The star should be here-->$c" +echo '*' +rm -f .echotmp + +: Now test for existence of everything in MANIFEST +echo " " +if test -f "$rsrc/MANIFEST"; then + echo "First let's make sure your kit is complete. Checking..." >&4 + awk '$1 !~ /PACK[A-Z]+/ {print $1}' "$rsrc/MANIFEST" | \ + (split -l 50 2>/dev/null || split -50) + rm -f missing + tmppwd=`pwd` + for filelist in x??; do + (cd "$rsrc"; ls `cat "$tmppwd/$filelist"` \ + >/dev/null 2>>"$tmppwd/missing") + done + if test -s missing; then + cat missing >&4 + cat >&4 <<'EOM' + +THIS PACKAGE SEEMS TO BE INCOMPLETE. + +You have the option of continuing the configuration process, despite the +distinct possibility that your kit is damaged, by typing 'y'es. If you +do, don't blame me if something goes wrong. I advise you to type 'n'o +and contact the author (Raphael_Manfredi@grenoble.hp.com). + +EOM + echo $n "Continue? [n] $c" >&4 + read ans + case "$ans" in + y*) + echo "Continuing..." >&4 + rm -f missing + ;; + *) + echo "ABORTING..." >&4 + kill $$ + ;; + esac + else + echo "Looks good..." + fi +else + echo "There is no MANIFEST file. I hope your kit is complete !" +fi +rm -f missing x?? + +: Find the appropriate value for a newline for tr +echo " " +if test -n "$DJGPP"; then + trnl='\012' +fi +if test X"$trnl" = X; then + case "`echo foo | tr '\n' x 2>/dev/null`" in + foox) trnl='\n' ;; + esac +fi +if test X"$trnl" = X; then + case "`echo foo | tr '\012' x 2>/dev/null`" in + foox) trnl='\012' ;; + esac +fi +if test X"$trnl" = X; then + case "`echo foo | tr '\r\n' xy 2>/dev/null`" in + fooxy) trnl='\n\r' ;; + esac +fi +if test X"$trnl" = X; then + cat <&2 + +$me: Fatal Error: cannot figure out how to translate newlines with 'tr'. + +EOM + exit 1 +else + echo "We'll use '$trnl' to transliterate a newline." +fi + +: compute the number of columns on the terminal for proper question formatting +case "$COLUMNS" in +'') COLUMNS='80';; +esac + +: set up the echo used in my read +myecho="case \"\$xxxm\" in +'') echo $n \"\$rp $c\" >&4;; +*) case \"\$rp\" in + '') echo $n \"[\$xxxm] $c\";; + *) + if test \`echo \"\$rp [\$xxxm] \" | wc -c\` -ge $COLUMNS; then + echo \"\$rp\" >&4 + echo $n \"[\$xxxm] $c\" >&4 + else + echo $n \"\$rp [\$xxxm] $c\" >&4 + fi + ;; + esac;; +esac" + +: now set up to do reads with possible shell escape and default assignment +cat <myread +$startsh +xxxm=\$dflt +$myecho +ans='!' +case "\$fastread" in +yes) case "\$dflt" in + '') ;; + *) ans=''; + case "\$silent-\$rp" in + true-) ;; + *) echo " " >&4;; + esac;; + esac;; +*) case "\$silent" in + true) case "\$rp" in + '') ans='';; + esac;; + esac;; +esac +while expr "X\$ans" : "X!" >/dev/null; do + read answ + set x \$xxxm + shift + aok=''; eval "ans=\\"\$answ\\"" && aok=y + case "\$answ" in + "!") + sh 1>&4 + echo " " + $myecho + ;; + !*) + set x \`expr "X\$ans" : "X!\(.*\)\$"\` + shift + sh 1>&4 -c "\$*" + echo " " + $myecho + ;; + "\$ans") + case "\$ans" in + \\&*) + set x \`expr "X\$ans" : "X&\(.*\)\$"\` + shift + case "\$1" in + -d) + fastread=yes + echo "(OK, I'll run with -d after this question.)" >&4 + ;; + -*) + echo "*** Sorry, \$1 not supported yet." >&4 + ;; + esac + $myecho + ans=! + ;; + esac;; + *) + case "\$aok" in + y) + echo "*** Substitution done -- please confirm." + xxxm="\$ans" + ans=\`echo $n "\$ans$c" | tr '$trnl' ' '\` + xxxm="\$ans" + ans=! + ;; + *) + echo "*** Error -- try again." + ans=! + ;; + esac + $myecho + ;; + esac + case "\$ans\$xxxm\$nostick" in + '') + ans=! + $myecho + ;; + esac +done +case "\$ans" in +'') ans="\$xxxm";; +esac +EOSC + +: create .config dir to save info across Configure sessions +test -d ../.config || mkdir ../.config +cat >../.config/README </dev/null` +case "$user" in +'') user=`whoami 2>&1`;; +esac +if $contains "^$user\$" ../.config/instruct >/dev/null 2>&1; then + firsttime=false + echo " " + rp='Would you like to see the instructions?' + dflt=n + . ./myread + case "$ans" in + [yY]*) ;; + *) needman=false;; + esac +fi +if $needman; then + cat <>../.config/instruct;; + esac +fi + +: script used to emit important warnings +cat >warn <msg +else + cat >msg +fi +echo " " +echo "*** WARNING:" >&4 +sed -e 's/^/*** /' &4 +echo "*** " >&4 +cat msg >>config.msg +echo " " >>config.msg +rm -f msg +EOS +chmod +x warn +$eunicefix warn + +: find out where common programs are +echo " " +echo "Locating common programs..." >&4 +cat <loc +$startsh +case \$# in +0) exit 1;; +esac +thing=\$1 +shift +dflt=\$1 +shift +for dir in \$*; do + case "\$thing" in + .) + if test -d \$dir/\$thing; then + echo \$dir + exit 0 + fi + ;; + *) + for thisthing in \$dir/\$thing; do + : just loop through to pick last item + done + if test -f \$thisthing; then + echo \$thisthing + exit 0 + elif test -f \$thisthing$_exe; then + echo \$thisthing + exit 0 + elif test -f \$dir/\$thing.exe; then + if test -n "$DJGPP"; then + echo \$dir/\$thing.exe + else + : on Eunice apparently + echo \$dir/\$thing + fi + exit 0 + fi + ;; + esac +done +echo \$dflt +exit 1 +EOSC +chmod +x loc +$eunicefix loc +loclist=" +awk +cat +chgrp +chmod +chown +cp +echo +expr +grep +mkdir +mv +rm +sed +sort +touch +tr +uniq +" +trylist=" +cpp +date +inews +less +line +ln +mail +make +more +nroff +perl +pg +rmail +sendmail +smail +test +uname +vi +zcat +" +pth=`echo $PATH | sed -e "s/$p_/ /g"` +pth="$pth /lib /usr/lib" +for file in $loclist; do + eval xxx=\$$file + case "$xxx" in + /*|?:[\\/]*) + if test -f "$xxx"; then + : ok + else + ./warn "no $xxx -- ignoring your setting for $file." + xxx=`./loc $file $file $pth` + fi + ;; + '') xxx=`./loc $file $file $pth`;; + *) xxx=`./loc $xxx $xxx $pth`;; + esac + eval $file=$xxx$_exe + eval _$file=$xxx + case "$xxx" in + /*) + echo $file is in $xxx. + ;; + ?:[\\/]*) + echo $file is in $xxx. + ;; + *) + echo "I don't know where '$file' is, and my life depends on it." >&4 + echo "Go find a public domain implementation or fix your PATH setting!" >&4 + exit 1 + ;; + esac +done +echo " " +echo "Don't worry if any of the following aren't found..." +say=offhand +for file in $trylist; do + eval xxx=\$$file + case "$xxx" in + /*|?:[\\/]*) + if test -f "$xxx"; then + : ok + else + ./warn "no $xxx -- ignoring your setting for $file." + xxx=`./loc $file $file $pth` + fi + ;; + '') xxx=`./loc $file $file $pth`;; + *) xxx=`./loc $xxx $xxx $pth`;; + esac + eval $file=$xxx$_exe + eval _$file=$xxx + case "$xxx" in + /*) + echo $file is in $xxx. + ;; + ?:[\\/]*) + echo $file is in $xxx. + ;; + *) + echo "I don't see $file out there, $say." + say=either + ;; + esac +done +case "$egrep" in +egrep) + echo "Substituting grep for egrep." + egrep=$grep + _egrep=$_grep + ;; +esac +case "$ln" in +ln) + echo "Substituting cp for ln." + ln=$cp + _ln=$_cp + ;; +esac +case "$make" in +make) + case "$gmake" in + gmake) + echo "I can't find make or gmake, and my life depends on it." >&4 + echo "Go find a public domain implementation or fix your PATH setting!" >&4 + exit 1 + ;; + esac + ;; +esac +case "$gmake" in +gmake) ;; +*) # We can't have osname yet. + if test -f "/system/gnu_library/bin/ar.pm"; then # Stratus VOS + # Assume that gmake, if found, is definitely GNU make + # and prefer it over the system make. + echo "Substituting gmake for make." + make=$gmake + _make=$_gmake + fi + ;; +esac +case "$test" in +test) + echo "Hopefully test is built into your sh." + ;; +*) + if `sh -c "PATH= test true" >/dev/null 2>&1`; then + echo "Using the test built into your sh." + test=test + _test=test + fi + ;; +esac +case "$echo" in +echo) + echo "Hopefully echo is built into your sh." + ;; +'') ;; +*) + echo " " +echo "Checking compatibility between $echo and builtin echo (if any)..." >&4 + $echo $n "hi there$c" >foo1 + echo $n "hi there$c" >foo2 + if cmp foo1 foo2 >/dev/null 2>&1; then + echo "They are compatible. In fact, they may be identical." + else + case "$n" in + '-n') n='' c='\c';; + *) n='-n' c='';; + esac + cat <$c" + $echo "*" + fi + $rm -f foo1 foo2 + ;; +esac + +: generate the trygcc script for later perusal +cat <trygcc +$startsh +EOS +cat <<'EOSC' >>trygcc +case "$cc" in +'') ;; +*) $rm -f try try.* + $cat >try.c <&4 + despair=yes + trygcc=yes + case "$cc" in + *gcc*) trygcc=no ;; + esac + case "`$cc -v -c try.c 2>&1`" in + *gcc*) trygcc=no ;; + esac + if $test X"$trygcc" = Xyes; then + if gcc -o try -c try.c; then + echo " " + echo "You seem to have a working gcc, though." >&4 + rp="Would you like to use it?" + dflt=y + if $test -f myread; then + . ./myread + else + if $test -f UU/myread; then + . ./UU/myread + else + echo "Cannot find myread, sorry. Aborting." >&2 + exit 1 + fi + fi + case "$ans" in + [yY]*) cc=gcc; ccname=gcc; ccflags=''; despair=no; + if $test -f usethreads.cbu; then + $cat >&4 <checkcc +$startsh +EOS +cat <<'EOSC' >>checkcc +case "$cc" in +'') ;; +*) $rm -f try try.* + $cat >try.c <&4 + fi + $cat >&4 < /dev/null 2>&1 ; then + echo "Symbolic links are supported." >&4 + lns="$ln -s" +else + echo "Symbolic links are NOT supported." >&4 + lns="$ln" +fi +$rm -f blurfl sym + +: determine whether symbolic links are supported +echo " " +case "$lns" in +*"ln"*" -s") + echo "Checking how to test for symbolic links..." >&4 + $lns blurfl sym + if $test "X$issymlink" = X; then + case "$newsh" in + '') sh -c "PATH= test -h sym" >/dev/null 2>&1 ;; + *) $newsh -c "PATH= test -h sym" >/dev/null 2>&1 ;; + esac + if test $? = 0; then + issymlink="test -h" + else + echo "Your builtin 'test -h' may be broken." >&4 + case "$test" in + /*) ;; + *) pth=`echo $PATH | sed -e "s/$p_/ /g"` + for p in $pth + do + if test -f "$p/$test"; then + test="$p/$test" + break + fi + done + ;; + esac + case "$test" in + /*) + echo "Trying external '$test -h'." >&4 + issymlink="$test -h" + if $test ! -h sym >/dev/null 2>&1; then + echo "External '$test -h' is broken, too." >&4 + issymlink='' + fi + ;; + *) issymlink='' ;; + esac + fi + fi + if $test "X$issymlink" = X; then + if $test -L sym 2>/dev/null; then + issymlink="$test -L" + echo "The builtin '$test -L' worked." >&4 + fi + fi + if $test "X$issymlink" != X; then + echo "You can test for symbolic links with '$issymlink'." >&4 + else + echo "I do not know how you can test for symbolic links." >&4 + fi + $rm -f blurfl sym + ;; +*) echo "No symbolic links, so not testing for their testing..." >&4 + ;; +esac + +: Duplicate the tree with symbolic links if -Dmksymlinks was supplied +case "$mksymlinks" in +$define|true|[yY]*) + case "$src" in + ''|'.') echo "Cannot create symlinks in the original directory." >&4 + exit 1 + ;; + *) case "$lns:$issymlink" in + *"ln"*" -s:"*"test -"?) + echo "Creating the symbolic links..." >&4 + echo "(First creating the subdirectories...)" >&4 + cd .. + awk '{print $1}' $src/MANIFEST | grep / | sed 's:/[^/]*$::' | \ + sort -u | while true + do + read directory + test -z "$directory" && break + if mkdir -p $directory 2>/dev/null && test -d $directory; then + : ok + else + echo "Failed to create '$directory'. Aborting." >&4 + exit 1 + fi + done + echo "(Then creating the symlinks...)" >&4 + awk '{print $1}' $src/MANIFEST | while true; do + read filename + test -z "$filename" && break + if test -f $filename; then + if $issymlink $filename; then + rm -f $filename + fi + fi + if test -f $filename; then + echo "$filename already exists, not symlinking." + else + ln -s $src/$filename $filename + fi + done + echo "(Checking current directory...)" >&4 + cd UU + awk '$1 !~ /PACK[A-Z]+/ {print $1}' "$rsrc/MANIFEST" | \ + (split -l 50 2>/dev/null || split -50) + rm -f missing + tmppwd=`pwd` + for filelist in x??; do + (cd ..; ls `cat "$tmppwd/$filelist"` \ + >/dev/null 2>>"$tmppwd/missing") + done + if test -s missing; then + cat missing >&4 + echo "Failed duplication of source tree. Aborting." >&4 + exit 1 + fi + ;; + *) echo "(I cannot figure out how to do symbolic links, ignoring!)" >&4 + ;; + esac + ;; + esac + ;; +esac + +: setup for possible cross-compilation +run='' +to=: +from=: +usecrosscompile='undef' +targetarch='' +case "$usecrosscompile" in +$define|true|[yY]*) + echo "Cross-compilation is not supported for this package." >&4 + exit 1 + ;; +esac + +: see whether [:lower:] and [:upper:] are supported character classes +echo " " +case "`echo AbyZ | $tr '[:lower:]' '[:upper:]' 2>/dev/null`" in +ABYZ) + echo "Good, your tr supports [:lower:] and [:upper:] to convert case." >&4 + up='[:upper:]' + low='[:lower:]' + ;; +*) # There is a discontinuity in EBCDIC between 'I' and 'J' + # (0xc9 and 0xd1), therefore that is a nice testing point. + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | $tr '[I-J]' '[i-j]' 2>/dev/null`" in + ij) up='[A-Z]' + low='[a-z]' + ;; + esac + fi + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | $tr I-J i-j 2>/dev/null`" in + ij) up='A-Z' + low='a-z' + ;; + esac + fi + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | od -x 2>/dev/null`" in + *C9D1*|*c9d1*) + echo "Hey, this might be EBCDIC." >&4 + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | $tr '[A-IJ-RS-Z]' '[a-ij-rs-z]' 2>/dev/null`" in + ij) up='[A-IJ-RS-Z]' + low='[a-ij-rs-z]' + ;; + esac + fi + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | $tr A-IJ-RS-Z a-ij-rs-z 2>/dev/null`" in + ij) up='A-IJ-RS-Z' + low='a-ij-rs-z' + ;; + esac + fi + ;; + esac + fi +esac +case "`echo IJ | $tr \"$up\" \"$low\" 2>/dev/null`" in +ij) + echo "Using $up and $low to convert case." >&4 + ;; +*) + echo "I don't know how to translate letters from upper to lower case." >&4 + echo "Your tr is not acting any way I know of." >&4 + exit 1 + ;; +esac +: set up the translation script tr, must be called with ./tr of course +cat >tr </dev/null` +$test -z "$myuname" && myuname=`hostname 2>/dev/null` +myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \ + ./tr '[A-Z]' '[a-z]' | $tr $trnl ' '` +newmyuname="$myuname" +dflt=n +case "$knowitall" in +'') + if test -f ../config.sh; then + if $contains myuname= ../config.sh >/dev/null 2>&1; then + eval "`grep myuname= ../config.sh`" + fi + if test "X$myuname" = "X$newmyuname"; then + dflt=y + fi + fi + ;; +*) dflt=y;; +esac + +: Get old answers, if there is a config file out there +hint=default +hintfile='' +if test -f ../config.sh; then + echo " " + rp="I see a config.sh file. Shall I use it to set the defaults?" + . ./myread + case "$ans" in + n*|N*) echo "OK, I'll ignore it.";; + *) echo "Fetching default answers from your old config.sh file..." >&4 + tmp_n="$n" + tmp_c="$c" + . ../config.sh + cp ../config.sh . + n="$tmp_n" + c="$tmp_c" + hint=previous + ;; + esac +fi +;; +*) + echo " " + echo "Fetching default answers from $config_sh..." >&4 + tmp_n="$n" + tmp_c="$c" + cd .. + cp $config_sh config.sh 2>/dev/null + chmod +w config.sh + . ./config.sh + cd UU + cp ../config.sh . + n="$tmp_n" + c="$tmp_c" + hint=previous + ;; +esac +test "$override" && . ./optdef.sh + +: Restore computed paths +for file in $loclist $trylist; do + eval $file="\$_$file" +done + +: process their -A options +. ./posthint.sh + +: who configured the system +LC_ALL=C; export LC_ALL +cf_time=`$date 2>&1` +cf_by=`(logname) 2>/dev/null` +case "$cf_by" in +"") + cf_by=`(whoami) 2>/dev/null` + case "$cf_by" in + "") cf_by=unknown ;; + esac ;; +esac + +: is AFS running? +echo " " +case "$afs" in +$define|true) afs=true ;; +$undef|false) afs=false ;; +*) if test -d /afs; then + afs=true + else + afs=false + fi + ;; +esac +if $afs; then + echo "AFS may be running... I'll be extra cautious then..." >&4 +else + echo "AFS does not seem to be running..." >&4 +fi + +: determine where manual pages are on this system +echo " " +case "$sysman" in +'') + syspath='/usr/man/man1 /usr/man/mann /usr/man/manl /usr/man/local/man1' + syspath="$syspath /usr/man/u_man/man1 /usr/share/man/man1" + syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1" + syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1" + syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1" + sysman=`./loc . /usr/man/man1 $syspath` + ;; +esac +if $test -d "$sysman"; then + echo "System manual is in $sysman." >&4 +else + echo "Could not find manual pages in source form." >&4 +fi + +: decide how portable to be +case "$d_portable" in +"$define") dflt=y;; +*) dflt=n;; +esac +$cat <<'EOH' + +I can set things up so that your shell scripts and binaries are more portable, +at what may be a noticable cost in performance. In particular, if you +ask to be portable, the following happens: + + 1) Shell scripts will rely on the PATH variable rather than using + the paths derived above. + 2) ~username interpretations will be done at run time rather than + by Configure. + +EOH +rp="Do you expect to run these scripts and binaries on multiple machines?" +. ./myread +case "$ans" in + y*) d_portable="$define" + ;; + *) d_portable="$undef" ;; +esac + +: set up shell script to do ~ expansion +cat >filexp <&2 + exit 1 + fi + case "\$1" in + */*) + echo \$dir/\`$expr x\$1 : '..[^/]*/\(.*\)'\` + ;; + *) + echo \$dir + ;; + esac + fi + ;; +*) + echo \$1 + ;; +esac +EOSS +chmod +x filexp +$eunicefix filexp + +: now set up to get a file name +cat <getfile +$startsh +EOS +cat <<'EOSC' >>getfile +tilde='' +fullpath='' +already='' +skip='' +none_ok='' +exp_file='' +nopath_ok='' +orig_rp="$rp" +orig_dflt="$dflt" + +case "$fn" in +*\(*) + expr $fn : '.*(\(.*\)).*' | tr ',' '\012' >getfile.ok + fn=`echo $fn | sed 's/(.*)//'` + ;; +esac + +case "$fn" in +*:*) + loc_file=`expr $fn : '.*:\(.*\)'` + fn=`expr $fn : '\(.*\):.*'` + ;; +esac + +case "$fn" in +*~*) tilde=true;; +esac +case "$fn" in +*/*) fullpath=true;; +esac +case "$fn" in +*+*) skip=true;; +esac +case "$fn" in +*n*) none_ok=true;; +esac +case "$fn" in +*e*) exp_file=true;; +esac +case "$fn" in +*p*) nopath_ok=true;; +esac + +case "$fn" in +*f*) type='File';; +*d*) type='Directory';; +*l*) type='Locate';; +esac + +what="$type" +case "$what" in +Locate) what='File';; +esac + +case "$exp_file" in +'') + case "$d_portable" in + "$define") ;; + *) exp_file=true;; + esac + ;; +esac + +cd .. +while test "$type"; do + redo='' + rp="$orig_rp" + dflt="$orig_dflt" + case "$tilde" in + true) rp="$rp (~name ok)";; + esac + . UU/myread + if test -f UU/getfile.ok && \ + $contains "^$ans\$" UU/getfile.ok >/dev/null 2>&1 + then + value="$ans" + ansexp="$ans" + break + fi + case "$ans" in + none) + value='' + ansexp='' + case "$none_ok" in + true) type='';; + esac + ;; + *) + case "$tilde" in + '') value="$ans" + ansexp="$ans";; + *) + value=`UU/filexp $ans` + case $? in + 0) + if test "$ans" != "$value"; then + echo "(That expands to $value on this system.)" + fi + ;; + *) value="$ans";; + esac + ansexp="$value" + case "$exp_file" in + '') value="$ans";; + esac + ;; + esac + case "$fullpath" in + true) + case "$ansexp" in + /*) value="$ansexp" ;; + *) + redo=true + case "$already" in + true) + echo "I shall only accept a full path name, as in /bin/ls." >&4 + echo "Use a ! shell escape if you wish to check pathnames." >&4 + ;; + *) + echo "Please give a full path name, starting with slash." >&4 + case "$tilde" in + true) + echo "Note that using ~name is ok provided it expands well." >&4 + already=true + ;; + esac + esac + ;; + esac + ;; + esac + case "$redo" in + '') + case "$type" in + File) + if test -f "$ansexp"; then + type='' + elif test -r "$ansexp" || (test -h "$ansexp") >/dev/null 2>&1 + then + echo "($value is not a plain file, but that's ok.)" + type='' + fi + ;; + Directory) + if test -d "$ansexp"; then + type='' + fi + ;; + Locate) + if test -d "$ansexp"; then + echo "(Looking for $loc_file in directory $value.)" + value="$value/$loc_file" + ansexp="$ansexp/$loc_file" + fi + if test -f "$ansexp"; then + type='' + fi + case "$nopath_ok" in + true) case "$value" in + */*) ;; + *) echo "Assuming $value will be in people's path." + type='' + ;; + esac + ;; + esac + ;; + esac + + case "$skip" in + true) type=''; + esac + + case "$type" in + '') ;; + *) + if test "$fastread" = yes; then + dflt=y + else + dflt=n + fi + rp="$what $value doesn't exist. Use that name anyway?" + . UU/myread + dflt='' + case "$ans" in + y*) type='';; + *) echo " ";; + esac + ;; + esac + ;; + esac + ;; + esac +done +cd UU +ans="$value" +rp="$orig_rp" +dflt="$orig_dflt" +rm -f getfile.ok +EOSC + +: determine root of directory hierarchy where package will be installed. +case "$prefix" in +'') + dflt=`./loc . /usr/local /usr/local /local /opt /usr` + ;; +*) + dflt="$prefix" + ;; +esac +$cat <bsd +echo exit 1 >usg +echo exit 1 >v7 +echo exit 1 >osf1 +echo exit 1 >eunice +echo exit 1 >xenix +echo exit 1 >venix +echo exit 1 >os2 +echo exit 1 >gnu +echo exit 1 >linux +d_bsd="$undef" +d_linux="$undef" +$cat /usr/include/signal.h /usr/include/sys/signal.h >foo 2>/dev/null +if test -f /osf_boot || $contains 'OSF/1' /usr/include/ctype.h >/dev/null 2>&1 +then + echo "Looks kind of like an OSF/1 system, but we'll see..." + echo exit 0 >osf1 +elif test `echo abc | $tr a-z A-Z` = Abc ; then + xxx=`./loc addbib blurfl $pth` + if $test -f $xxx; then + echo "Looks kind of like a USG system with BSD features, but we'll see..." + echo exit 0 >bsd + echo exit 0 >usg + else + if $contains SIGTSTP foo >/dev/null 2>&1 ; then + echo "Looks kind of like an extended USG system, but we'll see..." + else + echo "Looks kind of like a USG system, but we'll see..." + fi + echo exit 0 >usg + fi +elif $contains SIGTSTP foo >/dev/null 2>&1 ; then + echo "Looks kind of like a BSD system, but we'll see..." + d_bsd="$define" + echo exit 0 >bsd +elif + $rm --version 2>/dev/null >foo; + $contains "Free Software Foundation" foo >/dev/null +then + xxx=`uname` + echo exit 0 >gnu + echo "Looks kind of like a GNU/$xxx system, but we'll see..." + if $test X$xxx = XLinux; then + d_linux="$define" + echo exit 0 >linux + fi +else + echo "Looks kind of like a Version 7 system, but we'll see..." + echo exit 0 >v7 +fi +case "$eunicefix" in +*unixtovms*) + $cat <<'EOI' +There is, however, a strange, musty smell in the air that reminds me of +something...hmm...yes...I've got it...there's a VMS nearby, or I'm a Blit. +EOI + echo exit 0 >eunice + d_eunice="$define" +: it so happens the Eunice I know will not run shell scripts in Unix format + ;; +*) + echo " " + echo "Congratulations. You aren't running Eunice." + d_eunice="$undef" + ;; +esac +case "$p_" in +:) ;; +*) + $cat <<'EOI' +I have the feeling something is not exactly right, however...don't tell me... +lemme think...does HAL ring a bell?...no, of course, you're only running OS/2! +EOI + echo exit 0 >os2 + ;; +esac +if test -f /xenix; then + echo "Actually, this looks more like a XENIX system..." + echo exit 0 >xenix + d_xenix="$define" +else + echo " " + echo "It's not Xenix..." + d_xenix="$undef" +fi +chmod +x xenix +$eunicefix xenix +if test -f /venix; then + echo "Actually, this looks more like a VENIX system..." + echo exit 0 >venix +else + echo " " + if ./xenix; then + : null + else + echo "Nor is it Venix..." + fi +fi +chmod +x bsd usg v7 osf1 eunice xenix venix os2 gnu linux +$eunicefix bsd usg v7 osf1 eunice xenix venix os2 gnu linux +$rm -f foo + +: see if we have to deal with yellow pages, now NIS. +if $test -d /usr/etc/yp || $test -d /etc/yp; then + if $test -f /usr/etc/nibindd; then + echo " " + echo "I'm fairly confident you're on a NeXT." + echo " " + rp='Do you get the hosts file via NetInfo?' + dflt=y + case "$hostcat" in + nidump*) ;; + '') ;; + *) dflt=n;; + esac + . ./myread + case "$ans" in + y*) hostcat='nidump hosts .';; + *) case "$hostcat" in + nidump*) hostcat='';; + esac + ;; + esac + fi + case "$hostcat" in + nidump*) ;; + *) + case "$hostcat" in + *ypcat*) dflt=y;; + '') if $contains '^\+' /etc/passwd >/dev/null 2>&1; then + dflt=y + else + dflt=n + fi;; + *) dflt=n;; + esac + echo " " + rp='Are you getting the hosts file via yellow pages?' + . ./myread + case "$ans" in + y*) hostcat='ypcat hosts';; + *) hostcat='cat /etc/hosts';; + esac + ;; + esac +fi +case "$hostcat" in +'') hostcat='cat /etc/hosts';; +esac +case "$groupcat" in +'') groupcat='cat /etc/group';; +esac +case "$passcat" in +'') passcat='cat /etc/passwd';; +esac + +: now get the host name +echo " " +echo "Figuring out host name..." >&4 +case "$myhostname" in +'') cont=true + echo 'Maybe "hostname" will work...' + if tans=`sh -c hostname 2>&1` ; then + myhostname=$tans + phostname=hostname + cont='' + fi + ;; +*) cont='';; +esac +if $test "$cont"; then + if ./xenix; then + echo 'Oh, dear. Maybe "/etc/systemid" is the key...' + if tans=`cat /etc/systemid 2>&1` ; then + myhostname=$tans + phostname='cat /etc/systemid' + echo "Whadyaknow. Xenix always was a bit strange..." + cont='' + fi + elif $test -r /etc/systemid; then + echo "(What is a non-Xenix system doing with /etc/systemid?)" + fi +fi +if $test "$cont"; then + echo 'No, maybe "uuname -l" will work...' + if tans=`sh -c 'uuname -l' 2>&1` ; then + myhostname=$tans + phostname='uuname -l' + else + echo 'Strange. Maybe "uname -n" will work...' + if tans=`sh -c 'uname -n' 2>&1` ; then + myhostname=$tans + phostname='uname -n' + else + echo 'Oh well, maybe I can mine it out of whoami.h...' + if tans=`sh -c $contains' sysname $usrinc/whoami.h' 2>&1` ; then + myhostname=`echo "$tans" | $sed 's/^.*"\(.*\)"/\1/'` + phostname="sed -n -e '"'/sysname/s/^.*\"\\(.*\\)\"/\1/{'"' -e p -e q -e '}' <$usrinc/whoami.h" + else + case "$myhostname" in + '') echo "Does this machine have an identity crisis or something?" + phostname='';; + *) + echo "Well, you said $myhostname before..." + phostname='echo $myhostname';; + esac + fi + fi + fi +fi +: you do not want to know about this +set $myhostname +myhostname=$1 + +: verify guess +if $test "$myhostname" ; then + dflt=y + rp='Your host name appears to be "'$myhostname'".'" Right?" + . ./myread + case "$ans" in + y*) ;; + *) myhostname='';; + esac +fi + +: bad guess or no guess +while $test "X$myhostname" = X ; do + dflt='' + rp="Please type the (one word) name of your host:" + . ./myread + myhostname="$ans" +done + +: translate upper to lower if necessary +case "$myhostname" in +*[A-Z]*) + echo "(Normalizing case in your host name)" + myhostname=`echo $myhostname | ./tr '[A-Z]' '[a-z]'` + ;; +esac + +case "$myhostname" in +*.*) + dflt=`expr "X$myhostname" : "X[^.]*\(\..*\)"` + myhostname=`expr "X$myhostname" : "X\([^.]*\)\."` + echo "(Trimming domain name from host name--host name is now $myhostname)" + ;; +*) case "$mydomain" in + '') + { + test "X$hostcat" = "Xypcat hosts" && + ypmatch "$myhostname" hosts 2>/dev/null |\ + $sed -e 's/[ ]*#.*//; s/$/ /' > hosts && \ + $test -s hosts + } || { + $hostcat | $sed -n -e "s/[ ]*#.*//; s/\$/ / + /[ ]$myhostname[ . ]/p" > hosts + } + tmp_re="[ . ]" + $test x`$awk "/[0-9].*[ ]$myhostname$tmp_re/ { sum++ } + END { print sum }" hosts` = x1 || tmp_re="[ ]" + dflt=.`$awk "/[0-9].*[ ]$myhostname$tmp_re/ {for(i=2; i<=NF;i++) print \\\$i}" \ + hosts | $sort | $uniq | \ + $sed -n -e "s/$myhostname\.\([-a-zA-Z0-9_.]\)/\1/p"` + case `$echo X$dflt` in + X*\ *) echo "(Several hosts in /etc/hosts matched hostname)" + dflt=. + ;; + X.) echo "(You do not have fully-qualified names in /etc/hosts)" + ;; + esac + case "$dflt" in + .) + tans=`./loc resolv.conf X /etc /usr/etc` + if $test -f "$tans"; then + echo "(Attempting domain name extraction from $tans)" + dflt=.`$sed -n -e 's/ / /g' \ + -e 's/^search *\([^ ]*\).*/\1/p' $tans \ + | ./tr '[A-Z]' '[a-z]' 2>/dev/null` + case "$dflt" in + .) dflt=.`$sed -n -e 's/ / /g' \ + -e 's/^domain *\([^ ]*\).*/\1/p' $tans \ + | ./tr '[A-Z]' '[a-z]' 2>/dev/null` + ;; + esac + fi + ;; + esac + case "$dflt" in + .) echo "(No help from resolv.conf either -- attempting clever guess)" + dflt=.`sh -c domainname 2>/dev/null` + case "$dflt" in + '') dflt='.';; + .nis.*|.yp.*|.main.*) dflt=`echo $dflt | $sed -e 's/^\.[^.]*//'`;; + esac + ;; + esac + case "$dflt" in + .) echo "(Lost all hope -- silly guess then)" + dflt='.uucp' + ;; + esac + $rm -f hosts + ;; + *) dflt="$mydomain";; + esac;; +esac +echo " " +rp="What is your domain name?" +. ./myread +tans="$ans" +case "$ans" in +'') ;; +.*) ;; +*) tans=".$tans";; +esac +mydomain="$tans" + +: translate upper to lower if necessary +case "$mydomain" in +*[A-Z]*) + echo "(Normalizing case in your domain name)" + mydomain=`echo $mydomain | ./tr '[A-Z]' '[a-z]'` + ;; +esac + +: a little sanity check here +case "$phostname" in +'') ;; +*) + case `$phostname | ./tr '[A-Z]' '[a-z]'` in + $myhostname$mydomain|$myhostname) ;; + *) + case "$phostname" in + sed*) + echo "(That doesn't agree with your whoami.h file, by the way.)" + ;; + *) + echo "(That doesn't agree with your $phostname command, by the way.)" + ;; + esac + ;; + esac + ;; +esac + +: determine the e-mail address of the user who is running us +$cat <&4 +$cat >foo.c <<'EOF' +#define A(x) x +#define B(y) y +A(a)B(b) +EOF +if $cpp foo.c >foo.cpp; $contains ab foo.cpp >/dev/null 2>&1; then + echo "Plain '$cpp' works just fine." + cpp_trad="$cpp" +elif $cpp -traditional foo.c >foo.cpp; \ + $contains ab foo.cpp >/dev/null 2>&1; then + echo "We'll use '$cpp -traditional' to get proper semantics." + cpp_trad="$cpp -traditional" +else + echo "I don't know how to get traditional semantics with '$cpp'." >&4 + cpp_trad="$cpp" +fi +$rm -f foo.c foo.cpp + +: determine default editor +echo " " +case "$defeditor" in +'') + case "$vi" in + */*) dflt="$vi";; + *) dflt=/usr/ucb/vi;; + esac + ;; +*) dflt="$defeditor" + ;; +esac +fn=f/ +rp="What is the default editor on your system?" +. ./getfile +defeditor="$ans" + +: locate a BSD compatible install program +echo " " +echo "Looking for a BSD-compatible install program..." >&4 +creatdir='' +case "$install" in +'') + tryit='' + for dir in $pth; do + for file in ginstall installbsd scoinst install; do + if $test -f $dir/$file; then + tryit="$tryit $dir/$file" + fi + done + done + $cat >try.c </dev/null 2>&1; then + cp try try.ns + strip try >/dev/null 2>&1 + else + echo "(I can't seem to compile a trivial C program -- bypassing.)" + echo "try" >try + cp try try.ns + fi + $cat >tryinst </dev/null 2>&1 + if $test -d foo/bar; then + creatdir="$prog -d" + fi + (ls -l d/try >try.ls; ls -l d/try.ns >tryno.ls) 2>/dev/null + if (cmp -s d/try try && cmp -s d/try.ns try.ns && \ + $contains 'rwxrw-r--' tryno.ls && \ + $contains 'rw-r---w-' try.ls) >/dev/null 2>&1 + then + dflt="$prog" + echo "ok, that will do." + break + fi + echo "not good$either." + either=' either' + $rm -f try*.ls + done + $rm -rf foo d tryinst try try*.ls try.* + case "$dflt" in + '') + echo "Hopefully, $package comes with its own install script!" + dflt='./install' + ;; + esac + ;; +*) dflt="$install";; +esac +$cat <&4 +case "$installdir" in +'') + case "$creatdir" in + '') + $mkdir -p foo/bar >/dev/null 2>&1 + if $test -d foo/bar; then + echo "Great, we can build them using 'mkdir -p'." + creatdir='mkdir -p' + elif eval "$install -d foo/bar"; $test -d foo/bar; then + creatdir="install -d" + echo "It looks like '$creatdir' will do it for us." + fi + ;; + *) + eval "$creatdir foo/bar" >/dev/null 2>&1 + if $test -d foo/bar; then + echo "Ah! We can use '$creatdir' to do just that." + fi + ;; + esac + $rm -rf foo + case "$creatdir" in + '') + echo "Heck! Another ancient system lacking the comfort of modern ones!" + echo "You can thank $package for bringing you its own install script!" + installdir='./install -d' + ;; + *) installdir="$creatdir";; + esac + ;; +*) echo "As you already told me, '$installdir' should work.";; +esac + +: determine the name of a reasonable mailer +case "$mailer" in +'') + if $test -f "$sendmail"; then + dflt="$sendmail" + elif $test -f "$smail"; then + dflt="$smail" + elif $test -f "$rmail"; then + dflt="$rmail" + elif $test -f /bin/mail; then + dflt=/bin/mail + else + dflt=$mail + fi + ;; +*) dflt="$mailer";; +esac +$cat <&4 +cat <<'EOT' >testcpp.c +#define ABC abc +#define XYZ xyz +ABC.XYZ +EOT +cd .. +echo 'cat >.$$.c; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >cppstdin +chmod 755 cppstdin +wrapper=`pwd`/cppstdin +ok='false' +cd UU + +if $test "X$cppstdin" != "X" && \ + $cppstdin $cppminus testcpp.out 2>&1 && \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 +then + echo "You used to use $cppstdin $cppminus so we'll use that again." + case "$cpprun" in + '') echo "But let's see if we can live without a wrapper..." ;; + *) + if $cpprun $cpplast testcpp.out 2>&1 && \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 + then + echo "(And we'll use $cpprun $cpplast to preprocess directly.)" + ok='true' + else + echo "(However, $cpprun $cpplast does not work, let's see...)" + fi + ;; + esac +else + case "$cppstdin" in + '') ;; + *) + echo "Good old $cppstdin $cppminus does not seem to be of any help..." + ;; + esac +fi + +if $ok; then + : nothing +elif echo 'Maybe "'"$cc"' -E" will work...'; \ + $cc -E testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "Yup, it does." + x_cpp="$cc -E" + x_minus=''; +elif echo 'Nope...maybe "'"$cc"' -E -" will work...'; \ + $cc -E - testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "Yup, it does." + x_cpp="$cc -E" + x_minus='-'; +elif echo 'Nope...maybe "'"$cc"' -P" will work...'; \ + $cc -P testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "Yipee, that works!" + x_cpp="$cc -P" + x_minus=''; +elif echo 'Nope...maybe "'"$cc"' -P -" will work...'; \ + $cc -P - testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "At long last!" + x_cpp="$cc -P" + x_minus='-'; +elif echo 'No such luck, maybe "'$cpp'" will work...'; \ + $cpp testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "It works!" + x_cpp="$cpp" + x_minus=''; +elif echo 'Nixed again...maybe "'$cpp' -" will work...'; \ + $cpp - testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "Hooray, it works! I was beginning to wonder." + x_cpp="$cpp" + x_minus='-'; +elif echo 'Uh-uh. Time to get fancy. Trying a wrapper...'; \ + $wrapper testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + x_cpp="$wrapper" + x_minus='' + echo "Eureka!" +else + dflt='' + rp="No dice. I can't find a C preprocessor. Name one:" + . ./myread + x_cpp="$ans" + x_minus='' + $x_cpp testcpp.out 2>&1 + if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "OK, that will do." >&4 + else +echo "Sorry, I can't get that to work. Go find one and rerun Configure." >&4 + exit 1 + fi +fi + +case "$ok" in +false) + cppstdin="$x_cpp" + cppminus="$x_minus" + cpprun="$x_cpp" + cpplast="$x_minus" + set X $x_cpp + shift + case "$1" in + "$cpp") + echo "Perhaps can we force $cc -E using a wrapper..." + if $wrapper testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 + then + echo "Yup, we can." + cppstdin="$wrapper" + cppminus=''; + else + echo "Nope, we'll have to live without it..." + fi + ;; + esac + case "$cpprun" in + "$wrapper") + cpprun='' + cpplast='' + ;; + esac + ;; +esac + +case "$cppstdin" in +"$wrapper") ;; +*) $rm -f $wrapper;; +esac +$rm -f testcpp.c testcpp.out + +: find out how to generate dependencies +echo " " +echo "Checking how to generate makefile dependencies on your machine..." >&4 +toplev=`cd ..;pwd` +$cat >dep.c <<'EOCP' +#include "dep.h" +EOCP +$cat >dep.h <<'EOCP' + +EOCP +takeflags='flags="" +case "$@" in +*--*) + for arg + do + shift + case "$arg" in + --) break;; + *) flags="$flags $arg";; + esac + done;; +esac' +case "$mkdep" in +'') + ;; +*) + if test -f "$mkdep" && + $mkdep dep.c >dep.out 2>/dev/null && + $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 + then + echo "$mkdep works." + else + mkdep= + fi +esac + +case "$mkdep" in +'') + $spitshell > ../mkdep </dev/null +done +exit 0 +EOM + mkdep=$toplev/mkdep + chmod +x $mkdep + $eunicefix $mkdep + if $mkdep dep.c >dep.out 2>/dev/null && + $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 + then + echo "Looks like we can use $cpp -M." + else + mkdep= + fi + ;; +esac + +case "$mkdep" in +'') + $spitshell > ../mkdep </dev/null +done +exit 0 +EOM + mkdep=$toplev/mkdep + chmod +x $mkdep + $eunicefix $mkdep + if $mkdep dep.c >dep.out 2>/dev/null && + $contains "dep$_o: dep.h" dep.out >/dev/null 2>&1 + then + echo "Looks like we can use $cc -MM." + else + mkdep= + fi + ;; +esac + +case "$mkdep" in +'') + $spitshell >../mkdep </dev/null | \\ + $sed -e '/^# *[0-9]/!d' \\ + -e 's/^.*"\(.*\)".*\$/'\$filebase'$_o: \1/' \\ + -e 's|: \./|: |' \\ + -e 's|: *$|: '\$srcfile'|' | \\ + $grep -v '^#' | $sort | $uniq +done +exit 0 +EOS + mkdep=$toplev/mkdep + chmod +x $mkdep + $eunicefix $mkdep + if $mkdep dep.c >dep.out 2>/dev/null && + $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 + then + echo "A shell script using $cpp does the trick." + else + echo "$cpp doesn't seem to be any use at all." + $spitshell >../mkdep </ d' \\ + -e 's/:[^"]*"\([^"]*\)".*/: \1/' \\ + -e "s/\\.c:/$_o:/p" > /tmp/mkdep\$\$ + IFS=': ' + while read file dep; do + for dir in \$inc; do + if $test -f "\$dir/\$dep"; then + dep="\$dir/\$dep" + break + fi + done + echo "\$file: \$dep" | $sed -e 's,: \./,: ,' + done dep.out 2>/dev/null && + $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 + then + cat << EOM + +I can use a script with grep instead, but it will make some incorrect +dependencies, since it doesn't understand about conditional compilation. +Moreover, some dependencies may be missing, because scanning won't be +a recursive process. +If you have a program which generates makefile dependencies, you may want +to use it. If not, you can use the script and edit the Makefile by hand +if you need to. +EOM + else + mkdep= + cat << EOM + +I can't seem to generate makefile dependencies at all! Perhaps you have a +program that does? If you don't, you might look at the mkdep script to +see if you can create one which works. +EOM + fi + fi +esac +dflt="$mkdep" +fn=f~/ +rp="Name of program to make makefile dependencies?" +. ./getfile +mkdep="$ans" +$rm -f dep.c dep.h dep$_o dep.out + +: find out how to find out full name +case "$d_berknames" in +"$define") + dflt=y;; +"$undef") + dflt=n;; +*) + if ./bsd; then + dflt=y + elif ./xenix; then + dflt=y + else + dflt=n + fi + ;; +esac +$cat <<'EOM' + +Does your /etc/passwd file keep full names in Berkeley/V7 format (name first +thing after ':' in GCOS field)? In that case, a typical entry in the password +file looks like this: + + guest:**paswword**:10:100:Mister Guest User:/usr/users:/bin/sh + ^^^^^^^^^^^^^^^^^ +EOM +rp="Berkeley/V7 format for full name in /etc/passwd?" +. ./myread +case "$ans" in +y*) d_passnames="$define" + d_berknames="$define" + d_usgnames="$undef" + nametype=bsd + ;; +*) + case "$d_usgnames" in + "$define") dflt=y;; + "$undef") dflt=n;; + *) + if ./usg; then + dflt=y + else + dflt=n + fi + ;; + esac +$cat <<'EOM' + +Does your passwd file keep full names in USG format (name sandwiched between a +'-' and a '(')? In that case, a typical entry in the password file looks like +this: + + guest:**paswword**:10:100:000-Mister Guest User(000):/usr/users:/bin/sh + ^^^^^^^^^^^^^^^^^ +EOM + rp="USG format for full name in /etc/passwd?" + . ./myread + case "$ans" in + n*) echo "Full name will be taken from ~/.fullname" + d_passnames="$undef" + d_berknames="$undef" + d_usgnames="$undef" + nametype=other + ;; + *) + d_passnames="$define" + d_berknames="$undef" + d_usgnames="$define" + nametype=usg + ;; + esac;; +esac + +: get organization name +longshots='/local/src /usr/src/new /usr/src/local /usr/local/src' +case "$orgname" in +'') if xxx=`./loc news/src/defs.h x $longshots`; then + dflt=`$sed -n 's/^.*MYORG[ ]*"\(.*\)".*$/\1/p' $xxx` + else + dflt='' + fi + ;; +*) dflt="$orgname";; +esac +$cat << 'EOH' + +Please type the name of your organization as you want it to appear on the +Organization line of outgoing articles. (It's nice if this also specifies +your location. Your city name is probably sufficient if well known.) +For example: + + University of Southern North Dakota, Hoople + +You may also put the name of a file, as long as it begins with a slash. +For example: + + /etc/organization + +EOH +orgname="" +while test "X$orgname" = "X"; do + rp='Organization:' + . ./myread + orgname="$ans" +done + +: locate the preferred pager for this system +case "$pager" in +'') + dflt='' + case "$pg" in + /*) dflt=$pg;; + esac + case "$more" in + /*) dflt=$more;; + esac + case "$less" in + /*) dflt=$less;; + esac + case "$dflt" in + '') dflt=/usr/ucb/more;; + esac + ;; +*) dflt="$pager";; +esac +echo " " +fn=f/ +rp='What pager is used on your system?' +. ./getfile +pager="$ans" + +: get the patchlevel +echo " " +echo "Getting the current patchlevel..." >&4 +if $test -r $rsrc/patchlevel.h;then + patchlevel=`awk \ + '/^#[ ]*define[ ][ ]*PATCHLEVEL/ {print $3}' \ + < $rsrc/patchlevel.h` +else + patchlevel=0 +fi +echo "(You have $package $baserev PL$patchlevel.)" + +: determine perl absolute location +case "$perlpath" in +'') + if test -f /usr/bin/perl; then + dflt=/usr/bin/perl + else + case "$perl" in + */*) dflt="$perl";; + *) dflt=/usr/bin/perl;; + esac + fi + ;; +*) dflt="$perlpath" + ;; +esac +echo " " +fn=f~/ +rp="Where is perl located on your system?" +. ./getfile +perlpath="$ans" + +: figure out how to guarantee perl startup +case "$sharpbang" in +*!) + $cat >xtry </dev/null 2>&1; then + $cat <&4 + . ./config.arch +fi + +: configuration may be patched via a 'config.over' file +if $test -f config.over; then + echo " " + dflt=y + rp='I see a config.over file. Do you wish to load it?' + . UU/myread + case "$ans" in + n*) echo "OK, I'll ignore it.";; + *) . ./config.over + echo "Configuration override changes have been loaded." + ;; + esac +fi + +: in case they want portability, strip down executable paths +case "$d_portable" in +"$define") + echo " " + echo "Stripping down executable paths..." >&4 + xsed=$sed + for file in $loclist $trylist; do + eval sfile="\$$file" + sfile=`echo $sfile | $xsed -e 's,.*/\(.*\),\1,'` + eval $file="$sfile" + done + ;; +esac + +: create config.sh file +echo " " +echo "Creating config.sh..." >&4 +$spitshell <config.sh +$startsh +# +# This file was produced by running the Configure script. It holds all the +# definitions figured out by Configure. Should you modify one of these values, +# do not forget to propagate your changes by running "Configure -der". You may +# instead choose to run each of the .SH files by yourself, or "Configure -S". +# + +# Package name : $package +# Source directory : $src +# Configuration time: $cf_time +# Configured by : $cf_by +# Target system : $myuname + +Author='$Author' +Date='$Date' +Header='$Header' +Id='$Id' +Locker='$Locker' +Log='$Log' +Mcc='$Mcc' +RCSfile='$RCSfile' +Revision='$Revision' +Source='$Source' +State='$State' +_a='$_a' +_exe='$_exe' +_o='$_o' +afs='$afs' +ar='$ar' +archobjs='$archobjs' +awk='$awk' +baserev='$baserev' +bash='$bash' +bison='$bison' +byacc='$byacc' +c='$c' +cat='$cat' +ccname='$ccname' +ccversion='$ccversion' +cf_by='$cf_by' +cf_email='$cf_email' +cf_time='$cf_time' +chgrp='$chgrp' +chmod='$chmod' +chown='$chown' +comm='$comm' +compress='$compress' +contains='$contains' +cp='$cp' +cpio='$cpio' +cpp='$cpp' +cpp_trad='$cpp_trad' +cpplast='$cpplast' +cppminus='$cppminus' +cpprun='$cpprun' +cppstdin='$cppstdin' +csh='$csh' +d_berknames='$d_berknames' +d_bsd='$d_bsd' +d_eunice='$d_eunice' +d_linux='$d_linux' +d_passnames='$d_passnames' +d_portable='$d_portable' +d_usgnames='$d_usgnames' +d_xenix='$d_xenix' +date='$date' +defeditor='$defeditor' +echo='$echo' +egrep='$egrep' +emacs='$emacs' +eunicefix='$eunicefix' +expr='$expr' +find='$find' +firstmakefile='$firstmakefile' +flex='$flex' +from='$from' +gmake='$gmake' +grep='$grep' +groupcat='$groupcat' +gzip='$gzip' +hint='$hint' +hostcat='$hostcat' +inews='$inews' +install='$install' +installdir='$installdir' +installmansrc='$installmansrc' +installprivlib='$installprivlib' +installscript='$installscript' +issymlink='$issymlink' +ksh='$ksh' +less='$less' +line='$line' +lint='$lint' +ln='$ln' +lns='$lns' +lp='$lp' +lpr='$lpr' +ls='$ls' +mail='$mail' +mailer='$mailer' +mailx='$mailx' +make='$make' +make_set_make='$make_set_make' +manext='$manext' +mansrc='$mansrc' +mansrcexp='$mansrcexp' +mkdep='$mkdep' +mkdir='$mkdir' +more='$more' +mv='$mv' +mydomain='$mydomain' +myhostname='$myhostname' +myuname='$myuname' +n='$n' +nametype='$nametype' +nm='$nm' +nroff='$nroff' +orgname='$orgname' +osname='$osname' +osvers='$osvers' +package='$package' +pager='$pager' +passcat='$passcat' +patchlevel='$patchlevel' +perl='$perl' +perlpath='$perlpath' +pg='$pg' +phostname='$phostname' +pmake='$pmake' +pr='$pr' +prefix='$prefix' +prefixexp='$prefixexp' +privlib='$privlib' +privlibexp='$privlibexp' +rm='$rm' +rmail='$rmail' +run='$run' +scriptdir='$scriptdir' +scriptdirexp='$scriptdirexp' +sed='$sed' +sendmail='$sendmail' +sh='$sh' +shar='$shar' +sharpbang='$sharpbang' +shsharp='$shsharp' +sleep='$sleep' +smail='$smail' +sort='$sort' +spackage='$spackage' +spitshell='$spitshell' +src='$src' +startperl='$startperl' +startsh='$startsh' +submit='$submit' +sysman='$sysman' +tail='$tail' +tar='$tar' +targetarch='$targetarch' +tbl='$tbl' +tee='$tee' +test='$test' +to='$to' +touch='$touch' +tr='$tr' +trnl='$trnl' +troff='$troff' +uname='$uname' +uniq='$uniq' +usecrosscompile='$usecrosscompile' +uuname='$uuname' +vi='$vi' +zcat='$zcat' +zip='$zip' +EOT + +: add special variables +$test -f $src/patchlevel.h && \ +awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh +echo "CONFIG=true" >>config.sh + +: propagate old symbols +if $test -f UU/config.sh; then + UU/oldconfig.sh + sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' config.sh config.sh UU/oldconfig.sh |\ + sort | uniq -u >UU/oldsyms + set X `cat UU/oldsyms` + shift + case $# in + 0) ;; + *) + cat <>config.sh + for sym in `cat UU/oldsyms`; do + echo " Propagating $hint variable "'$'"$sym..." + eval 'tmp="$'"${sym}"'"' + echo "$tmp" | \ + sed -e "s/'/'\"'\"'/g" -e "s/^/$sym='/" -e "s/$/'/" >>config.sh + done + ;; + esac +fi + +: Finish up by extracting the .SH files +case "$alldone" in +exit) + $rm -rf UU + echo "Extraction done." + exit 0 + ;; +cont) + ;; +'') + dflt='' + nostick=true + $cat <&4 -c "$ans";; + esac + ;; +esac + +: if this fails, just run all the .SH files by hand +. ./config.sh + +echo " " +exec 1>&4 +pwd=`pwd` +. ./UU/extract +cd "$pwd" + +if $contains '^depend:' [Mm]akefile >/dev/null 2>&1; then + dflt=y + case "$silent" in + true) ;; + *) + $cat < makedepend.out &" +It can take a while, so you might not want to run it right now. + +EOM + ;; + esac + rp="Run $make depend now?" + . UU/myread + case "$ans" in + y*) + $make depend && echo "Now you must run '$make'." + ;; + *) + echo "You must run '$make depend' then '$make'." + ;; + esac +elif test -f [Mm]akefile; then + echo " " + echo "Now you must run a $make." +else + echo "Configure done." +fi + +if $test -f Policy.sh; then + $cat <&4 +fi +$rm -f kit*isdone ark*isdone +$rm -rf UU + +: End of Configure + diff --git a/Credits b/Credits new file mode 100644 index 0000000..af26e33 --- /dev/null +++ b/Credits @@ -0,0 +1,112 @@ +INTRO + +This version of dist has been written by Raphael Manfredi based on +previous work from Larry Wall and Harlan Stenn. + +HISTORY + +I started working on this in September 1990 while I was still a student +at the Ecole des Mines de Saint-Etienne, France. From then on, I worked +during two years at ISE (building the Eiffel 3.0 compiler -- the run-time +part and code generation). Since I chose to use metaconfig for the run-time +library, which is written in plain C, I had the chance to continue improving +the whole dist package. + +By the end of 1991, I contacted Harlan Stenn who had +been working separately on his own dist version. I started the painful merge. +At the same time, I started releasing alpha version of dist 3.0. + +In 1992, I started a parallel project: mailagent. The dist 2.0 release upon +which this work is based included a simple perl script called mailagent, whose +sole job was to filter out @SH commands to automatically mail patches to some +people. I liked the idea of having a perl mail filter and so I extended +mailagent up to the point where it became really big and only marginally +dist-related. I released it on the net (comp.sources.misc) on July 1992, after +7 months of hard work. + +In March 1993, I left ISE and returned to France to join ACRI. The dist 3.0 +package was "almost" finished by that time, but the documentation was no +longer accurate and needed a lot of work. My new job does not give me enough +free time, so things have been longer than I expected. + +In July 1993, under the pressure of many of my alpha testers, I decided to +go into the final process, sacrifying nights and week ends to finish up what +turns out to have been a 3 years process... + +CREDITS + +My first thanks will go to Larry Wall who wrote perl +and dist 2.0 in the first place. I would never have dived into dist 2.0 +if it had not been written in perl. + +During my work, I had the chance to benefit some useful comments and +contributions from Craig Kolb who +has been the very first user of metaconfig (with a rather pre-historic +version). He used it on its rayshade 4.0 release (a ray tracing program). + +Then of course, many thanks are due to my co-worker, Harlan Stenn +. Although I did the integration of his work all by +myself, I have found many good ideas in his early work. For instance, he wrote +the first implementation of the metalint program, something I could not live +without today! His remarks, comments and encouragements have always been +appreciated, even though we did not always agree on the same things at the +same time... + +Then I would like to thank the many contributors to the metaconfig units. +I hope I'm not forgetting anybody! Here they come, in alphabetical order: +(sorted on the first name) + + Andy Dougherty + Craig Kolb + Graham Stoney + Harlan Stenn + Jan Djarv + Larry Wall + Ralf E. Stranzenbach + Scott Grosch + Syd Weinstein + Thomas Neumann + Wayne Davison + +If I forgot your name, please let me know, and accept my apologies (not +necessarily in that order ;-). + +Finally, thank you Shigeya Suzuki for hosting the +dist-users mailing list. Send mail to majordomo@foretune.co.jp to subscribe. + + Raphael Manfredi + Lyon, France, August 1993 + +[This section added by subsequent patches] + +PATCHES + +I'm grateful to the following people for sending me patches and/or reporting +bugs and giving me some suggestions (sorted on the first name): + + Andy Dougherty + Graham Stoney + Ilya Zakharevich + Jarkko Hietaniemi + Joseph H Buehler + Keith Walker + Scott Presnell + Wayne Davison + +Due to a mistake of mine, changes from Wayne Davison were flagged 'WAD', +but his middle initial being an 'E', new ones are now flagged as 'WED'. +Sorry Wayne, I did not know. We don't use middle initials here in Europe. + +Special thanks to the perl5 Patch Pumpkin Holders (in chronological order): + + Andy Dougherty + Chip Salzenberg + +for their wonderful creativity. Perl5 is by far the largest metaconfig +customer with the widest audience, so Configure got run on a variety +of new platforms requiring specific fixes... which they provided, +thereby greatly enhancing the metaconfig "portability database". + + Raphael Manfredi + Grenoble, France, February 1997 + diff --git a/Jmakefile b/Jmakefile new file mode 100644 index 0000000..a64b607 --- /dev/null +++ b/Jmakefile @@ -0,0 +1,35 @@ +/* + * Main Jmakefile for dist 3.0 + */ + +;# $Id: Jmakefile,v 3.0.1.2 1995/07/25 13:29:41 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.2 1995/07/25 13:29:41 ram +;# patch56: re-ordered macros, moving the install at the end +;# +;# Revision 3.0.1.1 1994/01/24 13:42:41 ram +;# patch16: added dependency generation stage +;# +;# Revision 3.0 1993/08/18 12:03:53 ram +;# Baseline for dist 3.0 netwide release. +;# + +>MANSRC /* This should really become automated */ + +all:: /* So that default target is not clobber! */ + +SetSubdirs(bin mcon jmake pat kit lib) +DependDirs(bin mcon pat jmake kit) +AddedByConfigure(install) + +InstallManPage(dist,$(MANSRC)) + diff --git a/Known_bugs b/Known_bugs new file mode 100644 index 0000000..b5c6180 --- /dev/null +++ b/Known_bugs @@ -0,0 +1,14 @@ +Here are some known bugs that I plan to fix soon. + ++ Patname ought to ask for a log message for the symbolic number. + ++ A unit name is always wanted by Configure. Hence in a unit d_waitpid, if +you write: + + @if WAITPID || d_waitpid + ..... + @end + +then the <....> part of the code will always be loaded even if no shell +script references d_waitpid or C code references WAITPID. + diff --git a/MANIFEST b/MANIFEST new file mode 100644 index 0000000..2c93375 --- /dev/null +++ b/MANIFEST @@ -0,0 +1,612 @@ +Artistic The Artistic Licence +ChangeLog Where changes are recorded. +Configure Portability tool +Credits Traditional "thank you" list +Jmakefile Description of the main Makefile +Known_bugs A list of known bugs +MANIFEST This list of files +Makefile.SH A makefile to run subsidiary makefiles +README Basic instructions +Wishlist Features I would like to add +bin/ Some binary tools +bin/Jmakefile Generic makefile description for bin +bin/Makefile.SH Jmake-generated configured makefile +bin/manicheck.SH Check manifest accuracy +bin/manicheck.man Manual page for manicheck +bin/manilist.SH Produces reports based on manifest +bin/manilist.man Manual page for manilist +bin/packinit.SH Creates a .package file describing your package +bin/packinit.man Manual page for packinit +bin/perload Build dynamically loaded perl scripts +dist.man Introduction to dist +install.SH Installation script with a BSD-like syntax +jmake/ Where makefile generator is stored +jmake/Jmakefile High level makefile description for jmake +jmake/Makefile.SH Generated makefile for jmake +jmake/NOTES Quick description of the internal syntax +jmake/README Welcome to jmake +jmake/bindex.SH Script to build an index of rules +jmake/files/ Where rules for jmake are held +jmake/files/Jmake.rules Generic rules for jmake +jmake/files/Jmake.tmpl Template used by jmake to produce Makefile.SH +jmake/fixcpp.SH Wrapper around cpp to fix buggy backslash hanling +jmake/jmake.SH The makefile generator +jmake/jmake.man Manual page for jmake +jmake/jmkmf.SH Wrapper for jmake +jmake/jmkmf.man Manual page for jmkmf +kit/ Where distribution tools are stored +kit/Jmakefile Jmake's description of kit builder's makefile +kit/Makefile.SH Builds kit builder +kit/README Instructions on makedist +kit/kitpost.SH Post shell archive kits +kit/kitpost.man Manual page for kitpost +kit/kitsend.SH Mail shell archive kits +kit/kitsend.man Manual page for kitsend +kit/makeSH Does most of turning a script into an SH file +kit/makeSH.man Manual page for same +kit/makedist.SH Makes a set of kits in the current directory +kit/makedist.man Manual page for same +kit/manifake.SH Makes a MANIFEST.new file out of a MANIFEST +kit/manifake.man Manual page for same +lib/ Some library support files +lib/C/ Some useful C routines +lib/C/Jmakefile Generic makefile for C lib routines +lib/C/Makefile.SH Produces Makefile for C lib routines +lib/C/fake/ Fake implementations of real routines +lib/C/fake/Jmakefile Generic makefile for faked C routines +lib/C/fake/Makefile.SH Jmake-generated configured makefile +lib/C/fake/dup2.C A dup2() replacement +lib/C/fake/getopt.C A getopt() replacement +lib/C/fake/rename.C A rename() replacement for files +lib/C/fake/scandir.C A scandir() replacement +lib/C/fake/setsid.C A setsid() pale imitation +lib/Jmakefile Generic makefile description for lib +lib/Makefile.SH Jmake-generated configured makefile +lib/errnolist.a Awk script to build sys_errnolist[] +lib/errnolist.mk Rule files to add for errnolist.c +lib/errnolist.sh Script to build errnolist.c +lib/makedepend.sh Script to make dependecies, Larry Wall's way +lib/makedir.sh Emulates 'mkdir -p' +mcon/ Where metaconfig tools are stored +mcon/INTRO Quick introduction for newcommers +mcon/Jmakefile The file used by jmake to produce the Makefile +mcon/Makefile.SH Builds metaconfig +mcon/NOTES Documents the changes in metaconfig +mcon/README Instructions on using metaconfig +mcon/U/ Holds Units for metaconfig +mcon/U/AAAAA.U Does magic before Head.U +mcon/U/Begin.U "Beginning of configuration questions" +mcon/U/Checkcc.U A unit for checking the C compiler for sanity +mcon/U/Chk_MANI.U MANIFEST checks +mcon/U/Chk_whoami.U A unit which checks for conflicts +mcon/U/Compile.U Unit for performing compile and link tests +mcon/U/Config_h.U Makes config.h.SH--bizarrity here +mcon/U/Config_sh.U Makes config.sh +mcon/U/Configdir.U Creates .config directory to store persistent info +mcon/U/Cppsym.U Makes program to test for cpp symbols +mcon/U/Cross.U Unit for cross-compiling support +mcon/U/Csym.U Determines whether C symbol is defined +mcon/U/End.U "End of configuration questions" +mcon/U/Extract.U .SH file extraction +mcon/U/Extractall.U Support for the -S Configure option +mcon/U/Filexp.U Makes program to do tilde expansion +mcon/U/Findhdr.U Locate header files +mcon/U/Finish.U A unit which always goes last +mcon/U/Getfile.U Get file/directory name +mcon/U/Guess.U Hazard guesses as to overall philosophy +mcon/U/Head.U First unit, does "#!/bin/sh" et al +mcon/U/Inhdr.U Defines a look-for-header function +mcon/U/Init.U Magically gathers ?Init: lines from other units +mcon/U/Inlibc.U Defines an is-in-libc? function +mcon/U/Instruct.U Prints instructions +mcon/U/Loc.U Look for common programs +mcon/U/Loc_sed.U Full path of sed interpreter, even when portable +mcon/U/Magic_h.U Makes confmagic.h--bizarrity here +mcon/U/MailAuthor.U Offers user to register himself +mcon/U/MailList.U Offers user to subscribe to users list +mcon/U/Mkdirp.U Unit producing shell script to "mkdir -p" +mcon/U/Mksymlinks.U Unit to generate symlink to source tree +mcon/U/Myinit.U For copying to private U directories +mcon/U/Myread.U Makes program to do read with shell escape +mcon/U/Nothing.U For empty dependencies +mcon/U/Null.U Zeroes out variables. Probably unnecessary +mcon/U/Obsol_h.U Warnings about obsolete C symbols +mcon/U/Obsol_sh.U Warnings about obsolete shell symbols +mcon/U/Oldconfig.U Looks for old config.sh file +mcon/U/Oldsym.U Try to propagate symbols +mcon/U/Options.U Configure option parsing +mcon/U/Prefixit.U Fixes path prefix in variables in case it changed +mcon/U/Prefixup.U Fixes vars with path prefix using ~name expansion +mcon/U/Rcs.U Some stupid redefinitions to keep RCS happy +mcon/U/Setvar.U Set a variable with some sanity checks +mcon/U/Signal.U Utilities for sig_name.U +mcon/U/Tr.U Builds a tr script to handle lower and upper classes +mcon/U/Typedef.U Defines a typedef lookup function +mcon/U/Unix.U Common UNIX settings and assumptions +mcon/U/Warn.U Summarizes warnings emitted during Configure run +mcon/U/Warn_v7EXT.U V7 has some ideosyncracies +mcon/U/Warn_v7ND.U V7 has no O_NDELAY read +mcon/U/Whoa.U Warning function +mcon/U/abortsig.U Which signal is sent by abort()? +mcon/U/active.U Find the news active file +mcon/U/afs.U Look whether AFS is running or not +mcon/U/alignbytes.U Check for alignment constraints +mcon/U/archlib.U Where architecture-dependent files are installed +mcon/U/archname.U Computes the architecture name (cpu-osname) +mcon/U/baserev.U Base revision of package +mcon/U/basicshell.U Which basic shell is available +mcon/U/bin.U Find where to install public executables +mcon/U/bitpbyte.U Computes the number of bits in a byte +mcon/U/byteorder.U Computes the byte order (big-endian?) +mcon/U/cc.U Which C compiler should be used? +mcon/U/ccflags.U Any additional C flags? +mcon/U/cf_email.U Computes user's e-mail address +mcon/U/cf_name.U Computes user's full name +mcon/U/cf_who.U Who configured the sytem, where and when +mcon/U/charorder.U Character order within a byte +mcon/U/charsize.U What is the size of "char"? +mcon/U/contains.U Makes status-returning grep +mcon/U/cpp_stuff.U Some cpp stuff +mcon/U/cpp_trad.U Checks how to get traditional cpp behaviour +mcon/U/cppfilecom.U Running cpp while preserving C comments +mcon/U/cppstdin.U Check how to invoke the C pre-processor +mcon/U/d_NOFILE.U Maximum # of file descriptors +mcon/U/d_NeWS.U Old NeWS stuff +mcon/U/d_PORTAR.U Do we know about portable archives? +mcon/U/d_SHM_MAC.U SHMLBA macro stuff +mcon/U/d_access.U Do we have access()? +mcon/U/d_alarm.U Do we have alarm()? +mcon/U/d_attribut.U Checks wether your cc groks __attribute__ +mcon/U/d_bcmp.U Do we have bcmp() or memcmp()? +mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? +mcon/U/d_brokstat.U Check whether stat() macros are broken +mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? +mcon/U/d_byacc.U Is byacc available? +mcon/U/d_bzero.U Do we have bzero() or memset()? +mcon/U/d_casti32.U Can the compiler cast large flots to 32-bit ints? +mcon/U/d_castneg.U Can the C compiler cast negative to unsigned? +mcon/U/d_cbrt.U Do we have cubic root cbrt()? +mcon/U/d_charsprf.U How is sprintf() defined? +mcon/U/d_chown.U Do we have chown()? +mcon/U/d_chroot.U Do we have chroot()? +mcon/U/d_chsize.U Size of a char +mcon/U/d_ckeypad.U Do we have the curses keypad()? +mcon/U/d_closedir.U Do we have closedir()? +mcon/U/d_const.U Can cc grok the const keyword? +mcon/U/d_crypt.U Does crypt() exist? +mcon/U/d_csh.U csh path +mcon/U/d_ctermid.U Do we have ctermid()? +mcon/U/d_cuserid.U Do we have cuserid()? +mcon/U/d_dbl_dig.U Is DBL_DIG defined in or ? +mcon/U/d_debugging.U Conditionally defines -DDEBUGGING +mcon/U/d_difftime.U Do we have difftime()? +mcon/U/d_dlerror.U Do we have dlerror()? +mcon/U/d_dlopen.U Do we have dlopen()? +mcon/U/d_dosuid.U Do they want setuid emulation? +mcon/U/d_drem.U Do we have drem()? +mcon/U/d_dup2.U Do we have dup2()? +mcon/U/d_eofpipe.U Will EOF be seen on closed pipes? +mcon/U/d_euc2jis.U Do we have euc2jis()? +mcon/U/d_fchmod.U Do we have fchmod()? +mcon/U/d_fchown.U Do we have fchown()? +mcon/U/d_fcntl.U Do we have fcntl()? +mcon/U/d_fd_set.U Do we have the fd set manipulation macros? +mcon/U/d_ffs.U Do we have ffs()? +mcon/U/d_fgetpos.U Do we have fgetpos()? +mcon/U/d_flexfnam.U Long filenames? +mcon/U/d_flock.U Do we have flock()? +mcon/U/d_fmod.U Do we have fmod()? +mcon/U/d_fork.U Do we have fork()? +mcon/U/d_fsetpos.U Do we have fsetpos()? +mcon/U/d_ftime.U Do we have ftime()? +mcon/U/d_ftrncate.U Do we have ftruncate()? +mcon/U/d_gconvert.U Do we have gconvert() or gcvt()? +mcon/U/d_getgrps.U Do we have getgroups()? +mcon/U/d_gethbynm.U Do we have gethostbyname()? +mcon/U/d_gethent.U Do we have gethostent()? +mcon/U/d_gethid.U Do we have gethostid()? +mcon/U/d_gethname.U What is the C function to get host name? +mcon/U/d_getlogin.U Do we have getlogin()? +mcon/U/d_getopt.U Do we have getopt()? +mcon/U/d_getpagsz.U Computes system's page size +mcon/U/d_getpgid.U Do we have getpgid()? +mcon/U/d_getpgrp.U Do we have getpgrp()? +mcon/U/d_getpgrp2.U Do we have getpgrp2()? (DG/UX) +mcon/U/d_getppid.U Do we have getppid()? +mcon/U/d_getprior.U Do we have getpriority()? +mcon/U/d_getpwent.U How is passwd info gotten? +mcon/U/d_getwd.U Do we have getwd()? +mcon/U/d_gnulibc.U Are we using the GNU C library? +mcon/U/d_group.U Do we have group()? +mcon/U/d_havetlib.U Where is termlib? +mcon/U/d_hidnet.U Do hiddennet stuff? +mcon/U/d_htonl.U Do we have htonl() and friends? +mcon/U/d_inetaton.U Do we have inet_aton()? +mcon/U/d_inetd.U Should internet communication be done via inetd? +mcon/U/d_internet.U Use internet addresses? +mcon/U/d_isascii.U Do we have isascii()? +mcon/U/d_itimer.U Do we have setitimer()? +mcon/U/d_keepsig.U Will signal handlers need to be rearmed? +mcon/U/d_killpg.U Do we have killpg()? +mcon/U/d_link.U Do we have link()? +mcon/U/d_linuxstd.U Do we have Linux standard I/O structures? +mcon/U/d_locconv.U Do we have localeconv()? +mcon/U/d_lockf.U Do we have lockf()? +mcon/U/d_lstat.U Do we have lstat()? +mcon/U/d_mblen.U Do we have mblen()? +mcon/U/d_mbstowcs.U Do we have mbstowcs()? +mcon/U/d_mbtowc.U Do we have mbtowc()? +mcon/U/d_memalign.U Do we have memalign()? +mcon/U/d_memccpy.U Do we have memccpy()? +mcon/U/d_memchr.U Do we have memchr()? +mcon/U/d_memcmp.U Do we have memcmp()? +mcon/U/d_memcpy.U Do we have memcpy()? +mcon/U/d_memmove.U Do we have memmove()? +mcon/U/d_memset.U Do we have memset()? +mcon/U/d_mkdir.U Do we have mkdir()? +mcon/U/d_mkfifo.U Do we have mkfifo()? +mcon/U/d_mktime.U Do we have mktime()? +mcon/U/d_mmap.U Do we have mmap()? +mcon/U/d_msem_lck.U Do we have msem_lock()? +mcon/U/d_msg.U Do we have full msg(2) support? +mcon/U/d_msgctl.U Do we have msgctl()? +mcon/U/d_msgget.U Do we have msgget()? +mcon/U/d_msgrcv.U Do we have msgrcv()? +mcon/U/d_msgsnd.U Do we have msgsnd()? +mcon/U/d_msync.U Do we have msync()? +mcon/U/d_munmap.U Do we have munmap()? +mcon/U/d_newsadm.U Who is news administrator? +mcon/U/d_nice.U Do we have nice()? +mcon/U/d_nolnbuf.U Is stdout line buffered? +mcon/U/d_normsig.U signal() vs sigset() +mcon/U/d_open3.U Do we have the 3 arguments form for open()? +mcon/U/d_passwd.U Do we have passwd()? +mcon/U/d_pathconf.U Do we have pathconf()? +mcon/U/d_pause.U Do we have pause()? +mcon/U/d_perror.U Do we have perror()? +mcon/U/d_pidcheck.U Is kill(pid, 0) allowed for PID checks? +mcon/U/d_pipe.U Do we have pipe()? +mcon/U/d_poll.U Do we have poll()? +mcon/U/d_popen.U Do we have popen()? +mcon/U/d_portable.U How portable do we want to be? +mcon/U/d_pread.U Do we have pread()? +mcon/U/d_preadv.U Do we have preadv()? +mcon/U/d_psignal.U Do we have psignal()? +mcon/U/d_pwrite.U Do we have pwrite()? +mcon/U/d_pwritev.U Do we have pwritev()? +mcon/U/d_raster.U Is this a Raster Tech machine? +mcon/U/d_rdchk.U Is rdchk() there to check for input? +mcon/U/d_readdir.U Do we have readdir()? +mcon/U/d_readlink.U Do we have readlink()? +mcon/U/d_regcmp.U Do we have regcmp()? +mcon/U/d_rename.U Do we have rename()? +mcon/U/d_rmdir.U Do we have rmdir()? +mcon/U/d_rusage.U Do we have getrusage()? +mcon/U/d_safebcpy.U Can bcopy() handle overlapping blocks? +mcon/U/d_safemcpy.U Can memcpy() handle overlapping blocks? +mcon/U/d_sanemcmp.U Can we compare 8th bit in chars with memcmp()? +mcon/U/d_sbrk.U Do we have sbrk()? +mcon/U/d_scandir.U Do we have scandir()? +mcon/U/d_scannl.U Does scanf() groks '\n' correctly? +mcon/U/d_scorfl.U Keep scoreboards by full name? +mcon/U/d_select.U Do we have select()? +mcon/U/d_sem.U Do we have full sem(2) support? +mcon/U/d_semctl.U Do we have d_semctl()? +mcon/U/d_semget.U Do we have semget()? +mcon/U/d_semop.U Do we have semop()? +mcon/U/d_setegid.U Do we have setegid()? +mcon/U/d_seteuid.U Do we have seteuid()? +mcon/U/d_setgrps.U Do we have setgroups()? +mcon/U/d_setlnbuf.U Do we have setlinebuf()? +mcon/U/d_setlocale.U Do we have setlocale()? +mcon/U/d_setpgid.U Do we have setpgid()? +mcon/U/d_setpgrp.U Do we have setpgrp()? +mcon/U/d_setpgrp2.U Do we have setpgrp2()? (DG/UX) +mcon/U/d_setprior.U Do we have setpriority()? +mcon/U/d_setregid.U Do we have setregid()? +mcon/U/d_setreuid.U Do we have setreuid()? +mcon/U/d_setrgid.U Do we have setrgid()? +mcon/U/d_setruid.U Do we have setruid()? +mcon/U/d_setsid.U Do we have setsid()? +mcon/U/d_sgndchr.U Are chars signed? +mcon/U/d_shm.U Do we have full shm(2) support? +mcon/U/d_shmat.U Do we have shmat()? +mcon/U/d_shmctl.U Do we have shmctl()? +mcon/U/d_shmdt.U Do we have shmdt()? +mcon/U/d_shmget.U Do we have shmget()? +mcon/U/d_sigaction.U Do we have sigaction()? +mcon/U/d_sigblock.U Do we have sigblock()? +mcon/U/d_sighold.U Do we have sighold()? +mcon/U/d_siglist.U Do we have sys_siglist[]? +mcon/U/d_sigsetjmp.U Do we have sigsetjmp()? +mcon/U/d_sigsetmk.U Do we have sigsetmask()? +mcon/U/d_sigvec.U BSD reliable signals supported? +mcon/U/d_sjis2jis.U Do we have sjis2jis()? +mcon/U/d_socket.U BSD socket interface supported? +mcon/U/d_speedopt.U Optimize speed vs memory? +mcon/U/d_stat.U Do we have stat()? +mcon/U/d_statblks.U Does stat know about blksize and blocks? +mcon/U/d_stdstdio.U How standard is stdio? +mcon/U/d_strccmp.U Do we have strcasecmp()? +mcon/U/d_strchr.U Use strchr() or index()? +mcon/U/d_strcoll.U Do we have strcoll()? +mcon/U/d_strcspn.U Do we have strcspn()? +mcon/U/d_strctcpy.U Do we do struct copies? +mcon/U/d_strdup.U Do we have strdup()? +mcon/U/d_strerror.U Do we have strerror()? +mcon/U/d_strftime.U Do we have strftime()? +mcon/U/d_strstr.U Do we have strtr()? +mcon/U/d_strtod.U Do we have strtod()? +mcon/U/d_strtok.U Do we have strtok()? +mcon/U/d_strtol.U Do we have strtol()? +mcon/U/d_strtoul.U Do we have strtoul()? +mcon/U/d_strxfrm.U Do we have strxfrm()? +mcon/U/d_su_chown.U Do we need to be root to do a chown? +mcon/U/d_symlink.U Does symlink() exist? +mcon/U/d_syscall.U Do we have syscall()? +mcon/U/d_sysconf.U Do we have sysconf()? +mcon/U/d_syslog.U Do we have syslog()? +mcon/U/d_system.U Do we have system()? +mcon/U/d_table.U De we have table()? +mcon/U/d_tcgtpgrp.U Do we have tcgetpgrp()? +mcon/U/d_tcstpgrp.U Do we have tcsetpgrp()? +mcon/U/d_time.U Do we have time()? +mcon/U/d_times.U Do we have a times() function? +mcon/U/d_tminsys.U Is struct tm in ? +mcon/U/d_truncate.U Do we have truncate()? +mcon/U/d_tzmin.U Do we use tz_minuteswest? +mcon/U/d_tzname.U Do we have tzname[]? +mcon/U/d_ulimit.U Do we have ulimit()? +mcon/U/d_umask.U Do we have umask()? +mcon/U/d_usendir.U Use our own ndir routines? +mcon/U/d_usleep.U Do we have usleep()? +mcon/U/d_uwait.U Is there a 'union wait' declaration around here? +mcon/U/d_vfork.U vfork() vs fork() +mcon/U/d_voidsig.U How is signal() declared? +mcon/U/d_volatile.U Does our C compiler support "volatile"? +mcon/U/d_vprintf.U Do we have vprintf()? +mcon/U/d_wait3.U Do we have wait3()? +mcon/U/d_wait4.U Do we have wait4()? +mcon/U/d_waitpid.U Do we have waitpid() system call? +mcon/U/d_wcstombs.U Do we have wcstombs()? +mcon/U/d_wctomb.U Do we have wctomb()? +mcon/U/d_wifstat.U Can we safely use WIFEXITED() and friends? +mcon/U/d_xdrs.U Do we have XDR serialization routines? +mcon/U/defeditor.U Find default editor +mcon/U/doublesize.U What is the size of "double"? +mcon/U/ebcdic.U Check for an EBCDIC system +mcon/U/errnolist.U See if we need our own .c to get sys_errnolist[] +mcon/U/etc.U Where administrative executable should go +mcon/U/filexp.U Finds location of filexp made by Filexp.U +mcon/U/floatsize.U What is the size of "float"? +mcon/U/fpostype.U What is the type for file positions? +mcon/U/fpu.U What kind of Sun fpu is in use? +mcon/U/gccvers.U Computes the version of the GCC compiler +mcon/U/gidtype.U What is the type of gids? +mcon/U/groupstype.U What is the type for groups in getgroups()? +mcon/U/h_fcntl.U Do we need to include fcntl.h? +mcon/U/h_sysfile.U Do we need to include sys/file.h? +mcon/U/i_arpainet.U Shall we include ? +mcon/U/i_db.U Shall we include ? +mcon/U/i_dbm.U Shall we include ? +mcon/U/i_dirent.U Shall we include +mcon/U/i_dld.U Shall we include ? +mcon/U/i_dlfcn.U Shall we include ? +mcon/U/i_fcntl.U Shall we include ? +mcon/U/i_float.U Shall we include ? +mcon/U/i_gdbm.U Shall we include ? +mcon/U/i_grp.U Shall we include ? +mcon/U/i_inttypes.U Shall we include ? +mcon/U/i_limits.U Shall we include ? +mcon/U/i_locale.U Shall we include ? +mcon/U/i_malloc.U Shall we include ? +mcon/U/i_math.U Shall we include ? +mcon/U/i_memory.U Shall we include ? +mcon/U/i_ndbm.U Shall we include ? +mcon/U/i_neterrno.U Shall we include ? +mcon/U/i_niin.U Shall we include ? +mcon/U/i_pwd.U Shall we include ? +mcon/U/i_regex.U Shall we include ? +mcon/U/i_sfio.U Shall we include ? +mcon/U/i_stddef.U Shall we include ? +mcon/U/i_stdlib.U Shall we include ? +mcon/U/i_string.U or ? +mcon/U/i_sysdir.U Shall we include ? +mcon/U/i_sysfile.U Do we need ? +mcon/U/i_sysioctl.U Include or ? +mcon/U/i_sysmman.U Do we have to include ? +mcon/U/i_sysndir.U Shall we include ? +mcon/U/i_sysparam.U Shall we include ? +mcon/U/i_sysresrc.U Shall we include ? +mcon/U/i_sysselct.U Shall we include ? +mcon/U/i_syssock.U Shall we include ? +mcon/U/i_sysstat.U Shall we include +mcon/U/i_systable.U De we have to include ? +mcon/U/i_systimeb.U Is struct timeb defined in ? +mcon/U/i_systimes.U Shall we include ? +mcon/U/i_systwgcf.U Shall we include ? +mcon/U/i_systypes.U Do we have to include ? +mcon/U/i_sysun.U Shall we include ? +mcon/U/i_syswait.U Is there a ? +mcon/U/i_termio.U Include or ? +mcon/U/i_time.U Which time.h should we include? +mcon/U/i_unistd.U Include ? +mcon/U/i_utime.U Include ? +mcon/U/i_values.U Shall we include +mcon/U/i_varhdr.U Choose between and +mcon/U/i_vfork.U Include ? +mcon/U/i_whoami.U Include ? +mcon/U/inc.U Where to put public include files? +mcon/U/install.U Look for a BSD-compatible install +mcon/U/intsize.U What is the size of "int"? +mcon/U/ipc.U Choose IPC mechanism +mcon/U/issymlink.U How to test for symlink status from the shell +mcon/U/kernel.U Compute the kernel pathname +mcon/U/lex.U Use lex or flex? +mcon/U/lib.U Where to put public library files ? +mcon/U/libc.U Where is libc? +mcon/U/libdbm.U Look for a suitable dbm library +mcon/U/libflex.U Locate flex library +mcon/U/libnlist.U Locate an nlist library +mcon/U/libnm.U New math library? +mcon/U/libpth.U Set path to locate libraries +mcon/U/libs.U Optional libraries? +mcon/U/libyacc.U Locate yacc library +mcon/U/lintlib.U Where lint library should be placed +mcon/U/lns.U Are symbolic links supported by ln? +mcon/U/locdist.U Find distribution names for news +mcon/U/longsize.U What is the size of "long"? +mcon/U/lseektype.U What is the type of lseek()? +mcon/U/maildir.U Where is mail spooled +mcon/U/mailer.U What delivers mail? +mcon/U/mailfile.U What filename in maildir? +mcon/U/make.U Does make set the $(MAKE) macro? +mcon/U/mallocsrc.U Use malloc included in kit? +mcon/U/man1dir.U Where to put traditional section 1 manpage sources +mcon/U/man3dir.U Where to put traditional section 3 manpage sources +mcon/U/manfmt.U Formatted man directories +mcon/U/mansrc.U Where to put manual pages source +mcon/U/mboxchar.U How to determine if file is mailbox +mcon/U/mkdep.U How to generate makefile dependencies? +mcon/U/models.U Large vs small, split I&D, etc +mcon/U/modetype.U What is the type for file modes? +mcon/U/myhostname.U How to determine hostname from shell +mcon/U/n.U How to suppress newline with echo +mcon/U/nametype.U How to get user's fullname +mcon/U/nblock_io.U Support for non-blocking I/O +mcon/U/newslevel.U What version of news are we running? +mcon/U/newslib.U Where is the news library? +mcon/U/newsspool.U Where is news spooled? +mcon/U/nis.U Do we have to deal with NIS (former YP)? +mcon/U/nlist_pfx.U nlist() related stuff +mcon/U/orderlib.U Shall we order components libraries? +mcon/U/orgname.U What is the organizaton name? +mcon/U/packadmin.U E-mail address of the package administrator +mcon/U/package.U Gets package name from .package magically +mcon/U/pager.U What's the pager, more or less? +mcon/U/patchlevel.U Grab current patchlevel out of patchlevel.h +mcon/U/perlpath.U The full path of perl +mcon/U/pidtype.U What is the type of a PID? +mcon/U/pkgsrc.U Computes the absolute package source directory +mcon/U/prefix.U Installation prefix setting (none, /usr/local) +mcon/U/prefshell.U Preferred user shell +mcon/U/privlib.U Where is the private library? +mcon/U/prototype.U Do we support prototypes? +mcon/U/ptrsize.U What is the size of a pointer? +mcon/U/randbits.U How many bits in rand()? +mcon/U/randfunc.U Which random number function shall we use? +mcon/U/rcs_branch.U Does RCS know about the -b switch? +mcon/U/registers.U How many register declarations to use +mcon/U/rootid.U Root user id +mcon/U/sbrksmart.U Can sbrk() be used to release core? +mcon/U/sbrktype.U What is the return type of sbrk()? +mcon/U/scriptdir.U Where to put public scripts +mcon/U/selecttype.U What type for select() file bitfields? +mcon/U/sh.U Where the shell is located +mcon/U/shm_for.U More shared memory stuff +mcon/U/sig_name.U Signal names +mcon/U/sitearch.U Where user-installed arch-dependant files should go +mcon/U/sitelib.U Where user-installed regular library files should go +mcon/U/sizetype.U What is the type for byte size? +mcon/U/so.U Shared object extension +mcon/U/sockopt.U Check for socket options +mcon/U/spitshell.U Shell comment stripper, maybe +mcon/U/src.U Build and source tree separation support +mcon/U/ssizetype.U What is the signed type for byte size? +mcon/U/startperl.U Do we start perl with #! or what? +mcon/U/startsh.U How to guarantee sh startup +mcon/U/stdchar.U Are chars unsigned in stdio? +mcon/U/sunscanf.U Is this Sun's version of scanf()? +mcon/U/sysman.U Where is the man(1) located? +mcon/U/trnl.U Finds appropriate value for a newline in tr +mcon/U/uidtype.U What is the type of uids? +mcon/U/usenm.U Shall we use the costly nm extraction? +mcon/U/usesocks.U Defines USE_SOCKS when SOCKS is to be used +mcon/U/usrinc.U Where are include files located? +mcon/U/vaproto.U How do we prototype varargs, with ...? +mcon/U/voidflags.U How supported is void? +mcon/U/warnflags.U Any additional cc warning flags? +mcon/U/yacc.U Which compiler-compiler to use? +mcon/configure GNU configure-like wrapper to metaconfig's Configure +mcon/files/ Templates for new units +mcon/files/Internal.U Template for special units with internal symbols +mcon/files/README Why those templates are here... +mcon/files/d_function.U Template for C defines +mcon/files/dir.U Template to get a directory +mcon/files/file.U Template get a file +mcon/files/i_include.U Template for include files +mcon/files/keyword.U Template for keyword checking +mcon/files/locate.U Template to locate a file +mcon/files/question.U Template for setvar questions +mcon/files/rcshead.U Template for unit head +mcon/files/shell.U Template for non-setvar questions +mcon/files/type.U Template for type lookup +mcon/makegloss.SH Extracts Glossary from Unit files +mcon/man/ Manual pages for metaconfig et al. +mcon/man/Jmakefile Generic makefile description for manual pages +mcon/man/Makefile.SH Jmake-generated makefile for manual pages +mcon/man/mconfig.SH Manual page for metaconfig +mcon/man/mlint.SH Manual page for metalint +mcon/man/mxref.SH Manual page for metaxref +mcon/mconfig.SH Writes Configure scripts for you +mcon/mlint.SH Lints metaconfig units +mcon/mxref.SH Builds symbol cross-reference files +mcon/pl/ Perl library for metaconfig et al. +mcon/pl/common.pl Common control lines extraction +mcon/pl/configure.pl Generates Configure +mcon/pl/cosmetic.pl Some cosmetic fixes +mcon/pl/depend.pl Metaconfig-only dependencies +mcon/pl/eval.pl Built-in interpreter +mcon/pl/extract.pl Dependency extractor engine +mcon/pl/files.pl Extracts files from MANIFEST.new +mcon/pl/gensym.pl Dynamic symbol generator +mcon/pl/init.pl Initialization of dependency control array +mcon/pl/lint.pl Lint-only dependencies +mcon/pl/locate.pl Locate units +mcon/pl/makefile.pl Builds temporary Makefiles +mcon/pl/obsolete.pl Deals with obsolete symbols +mcon/pl/order.pl Re-order units within Configure +mcon/pl/tsort.pl Topological sort +mcon/pl/wanted.pl Set up Wanted file +mcon/pl/xref.pl Metaxref-only dependencies +mcon/pl/xwant.pl Metaxref symbol extraction +pat/ Where patching tools are stored +pat/Jmakefile High level makefile description for pat +pat/Makefile.SH Makefile for pat tools +pat/README Instructions for patch/developping tools +pat/pat.SH Check in, do diffs, make patch, send it +pat/pat.man Manual page for patch tools +pat/patbase.SH To set the base for future differences +pat/patchlevel.h Prototypical patchlevel.h +pat/patcil.SH Check in the latest changes +pat/patclean.SH Check in latest changes and remove files +pat/patcol.SH Check out working file +pat/patdiff.SH Find the differences since last patch +pat/patftp.SH Put patches in ftp pub directory +pat/patindex.SH Create an index of patches sent out +pat/patlog.SH Handles the ChangeLog file +pat/patmake.SH Put together a patch file +pat/patname.SH Assign symbolic name to a revision +pat/patnotify.SH Notifies that new patches have been released +pat/patpost.SH Send patches via news +pat/patsend.SH Sends patches via mail +pat/patsnap.SH Builds RCS snapshot file +patchlevel.h The current patchlevel for dist +pl/ Directory for public perl libraries +pl/comment.pl Perl library to find comment in front of $Log +pl/copyright.pl Perl library to expand copyright +pl/editor.pl Perl library to compute suitable editor name +pl/fullname.pl Perl library to get full name +pl/listedit.pl Perl library to edit list of items +pl/logname.pl Perl library to get login name +pl/makedir.pl Perl library to emulate 'mkdir -p' +pl/manifake.pl Perl library to build a MANIFEST.new if none found +pl/newer.pl Perl library to Find files newer than patchlevel.h +pl/package.pl Perl library to read .package +pl/patseq.pl Perl library to compute issued patch sequence +pl/profile.pl Perl library to get ~/.dist_profile +pl/rangeargs.pl Perl library to expand number lists +pl/rcsargs.pl Perl library to expand rcs filename lists +pl/snapshot.pl Perl library to parse RCS snapshot file +pl/tilde.pl Perl library to perform ~name expansion +pl/users.pl Perl library to parse users file diff --git a/Makefile.SH b/Makefile.SH new file mode 100755 index 0000000..2b54336 --- /dev/null +++ b/Makefile.SH @@ -0,0 +1,218 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL55] +: $X-Id: Jmake.tmpl,v 3.0.1.2 1995/01/11 14:50:21 ram Exp ram $ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=. +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.3 1995/03/21 08:35:28 ram Exp ram $ +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.2 1995/07/25 13:29:41 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.2 1995/07/25 13:29:41 ram +# patch56: re-ordered macros, moving the install at the end +# +# Revision 3.0.1.1 1994/01/24 13:42:41 ram +# patch16: added dependency generation stage +# +# Revision 3.0 1993/08/18 12:03:53 ram +# Baseline for dist 3.0 netwide release. +# + +all:: + +depend:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in bin mcon pat jmake kit ;\ + do \ + (cd $$i ; echo "Depending" "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) depend); \ + done + +local_clobber:: + $(RM) install + +install.man:: dist.man + $(INSTALL) -c -m 444 dist.man $(MANSRC)/dist.$(L) + +deinstall.man:: + $(RM) $(MANSRC)/dist.$(L) + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: sub_clean local_clean +realclean: sub_realclean local_realclean +clobber: sub_clobber local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + $(RM) -r UU + +local_clobber:: local_realclean + $(RM) config.sh config.h + $(RM) -r .config + $(RM) Makefile + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Rules for building in sub-directories -- do not edit + +subdirs: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS) ;\ + do \ + (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)); \ + done + +install:: + @$(MAKE) subdirs TARGET=install VERB="Installing" FLAGS= + +deinstall:: + @$(MAKE) subdirs TARGET=deinstall VERB="Deinstalling" FLAGS= + +install.man:: + @$(MAKE) subdirs TARGET=install.man VERB="Installing man pages" FLAGS= + +deinstall.man:: + @$(MAKE) subdirs TARGET=deinstall.man VERB="Deinstalling man pages" FLAGS= + +sub_clean:: + @$(MAKE) subdirs TARGET=clean VERB="Cleaning" FLAGS= + @echo "Back to $(CURRENT) for "clean... + +sub_realclean:: + @$(MAKE) subdirs TARGET=realclean VERB="Real cleaning" FLAGS= + @echo "Back to $(CURRENT) for "realclean... + +sub_clobber:: + @$(MAKE) subdirs TARGET=clobber VERB="Clobbering" FLAGS= + @echo "Back to $(CURRENT) for "clobber... + +tag:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS) ;\ + do \ + (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) tag); \ + done + +Makefiles:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS);\ + do \ + echo "Making "Makefiles" in $(DIR)$$i..."; \ + (cd $$i || exit 1; \ + if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ + $(MAKE) $(MFLAGS) Makefiles) \ + done + +Makefiles.SH:: Makefile.SH + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS);\ + do \ + case "$(DIR)$$i/" in \ + */*/*/*/) newtop=../../../..;; \ + */*/*/) newtop=../../..;; \ + */*/) newtop=../..;; \ + */) newtop=..;; \ + esac; \ + case "$(TOP)" in \ + /*) newtop="$(TOP)" ;; \ + esac; \ + echo "Making Makefiles.SH in $(DIR)$$i..."; \ + (cd $$i || exit 1; $(MAKE) $(MFLAGS) -f ../Makefile \ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i;\ + $(MAKE) $(MFLAGS) Makefiles.SH) \ + done + +all:: + @$(MAKE) subdirs TARGET=all VERB="Making all" FLAGS= + +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/README b/README new file mode 100644 index 0000000..4f31741 --- /dev/null +++ b/README @@ -0,0 +1,138 @@ + dist 4.0 + ** Alpha version ** + + Copyright (c) 1988, Larry Wall + Copyright (c) 1990-1992, Harlan Stenn + Copyright (c) 1991-1997, Raphael Manfredi + Copyright (c) 2004-2005, Raphael Manfredi + +------------------------------------------------------------------------ + This program is free software; you can redistribute it and/or modify + it under the terms of the Artistic License, a copy of which can be + found with this package. + + 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 + Artistic License for more details. +------------------------------------------------------------------------ + +This version of dist requires you to have at least perl 4.0 PL36. +It has also been ported to work with perl 5.0 PL0, provided you have +at least integrated patches 0a-0h, issued by Andy Dougherty and made +available at the following ftp sites: + + ftp.demon.co.uk:/pub/perl/db/perl5.000-p0a-p0h.tar.gz + ftp.funet.fi:/pub/languages/perl/ports/perl5/perl5.000-p0a-p0h.tar.gz + +Please read all the directions below before you proceed any further, and +then follow them carefully. + +After you have unpacked your kit, you should have all the files listed +in MANIFEST. + +======================================================================== + It's not the way I wrote it, but the + way you play it makes it sound a lot better. + -- Camille Saint-Saens (French composer) + +The dist package consists of four parts: + + 1) The Configure generator (metaconfig) and its supporting files. + 2) The distribution kit maker (makedist) and its supporting files. + 3) The patch distribution system (pat*) and its supporting files. + 4) The Makefile generator (jmake) and its supporting files. + +Each of these can be used separately from the others. Before you can +use any of those, however, the directory containing your package (not this +package) must be initialized by putting a .package file into it. This +can be done by running packinit in that directory. + +There is a mailing list hosted in Japan and set up by Shigeya Suzuki +, for discussion about the dist package as a +whole. It's a good place to ask questions (or answer them) and to +send your patches. I will post official patches to the net, as well +as to the dist-users list. + +To send a mail to the list, address it to . +To subscribe, send a mail to . If you don't +know how to use majordomo, the syntax of the subscribe command is: + + subscribe dist-users [address] + +where the address part is optional. You may unsubscribe automatically +at any time by sending: + + unsubscribe dist-users + +If you have a problem with this version of dist, it is recommended that +you subscribe to the list, then send a description of your problem to it. +If you send mail to me personally, I may not be able to answer in a +timely fashion. + +This mailing list has low traffic (a few articles per week, typically), +and it is expected to remain so, with a high signal/noise ratio. + +Notes: + + If you are running on a system with <= 14 char filenames, don't + distribute any files with filenames longer than 12 chars (with the + exception of patchlevel.h), so that there will be room for a + 2-digit extension indicating patch number in your bugs direcory. + This includes .SH files, so any shell script built by a .SH file + should be 9 characters or less. On systems with flexfilenames you + don't have to worry about it. + + This package has been designed on top of dist 2.0, which has been + written by Larry Wall . +======================================================================== + +INSTALLATION + +1) Run Configure. This will figure out various things about your +system. After it has completed, it will produce config.h and config.sh. + +You might possibly have to trim # comments from the front of Configure +if your shell doesn't handle them, but all other comments will be taken +care of. + +2) Run make. + +3) If make succeeded, you may wish to do "make install install.man". Be +sure your rights are correct (if you install manual pages, you may need +super-user privileges). By not running "make install.man", you avoid the +installation of the manual pages. + +4) Read the manual entry before running. + +5) IMPORTANT! Communicate any problem and suggested patches to me, +ram@hptnos02.grenoble.hp.com (Raphael Manfredi), so we can keep this +distribution in sync. If you have a problem, there will be someone else +who had it or will have it too... + +If possible, send me patches such that the patch program will apply +them. Context diffs are the best, then normal diffs. Do not send ed +scripts, I have probably changed my copy since the version you got. + +6) After everything is installed, you can do make clobber. This will +clean up everything and let you re-distribute this kit, without +carrying useless files. You should keep this distribution intact, so +that future patches will be applyable. + +7) I have an automatic patch sender. Send me the following mail: + + Subject: Command + @SH mailhelp PATH + +and you'll get instructions (PATH stands for YOUR e-mail address, either +in INTERNET or in bang notation). I would recommend you to get all the +issued patches before you start making some modifications on this +package. + +8) If you wish to deinstall the package, you may run "make deinstall". +A separate "make deinstall.man" will remove the manual pages. Be sure +the makefiles are correctly set before running any deinstall target. +On USG systems, some executable have a chance to remain despite the +deinstall (text file busy...). + + Raphael Manfredi diff --git a/Wishlist b/Wishlist new file mode 100644 index 0000000..81bbb8c --- /dev/null +++ b/Wishlist @@ -0,0 +1,60 @@ +*** List of wishes for dist version 3.0 *** + +======================================================================= +If you wish to implement one of the following, you're welcome :-). In +that case, please let me know about it. I will probably integrate your +changes in my version (after some sanity checks, because I can't +maintain something I don't understand). + +This list has no priority order whatsoever, so you may pick up one of +the following suggestion and start working on it. In that case, you +may want to get all the official patches for dist 3.0 first and make +sure nobody is already working on that topic. +======================================================================= + +*** jmake + +Make the names used more uniform. For instance, 'Simple' appears in +many rules, but with different meanings, thus making the Jmakefile +harder to understand at a first glance. + +Allow per-system compilation rules, so that objects and source file +do not inter-mix but are kept in separate directories. + +*** metaconfig + +Write some "generic" templates for writing new units, so that the user +only needs to fill up some fields. For instance, there could be a +template for d_* and i_* units. [That's done, they are under mcon/files. +Now I only need to write the generator on top of them] + +Make Configure know about cross-compiling. + +Make Configure know about VPATH for separate object directory, with +proper support from jmake. + +Implement the ?I: and ?L: lines. The ?I: fills in inclwanted for you, +while ?L: fills in the libswanted variable. For instance, when using +a socket() call, one may need to look at -lbsd. If d_socket.U lists +'bsd' within its ?L: line, then the libswanted variable will be +correctly set. [Note: there are some hooks for this already] + +Build a library of PD routines that may be otherwise missing on +some older systems, eg: getopt(). Those routines will be automagically +added to the package by relying on ?P: lines, something like: + + ?P:getopt (HAS_GETOPT): getopt.c + +which would include getopt.c in the package (under some PD dir) +when getopt is used and HAS_GETOPT is *not* used within the sources, +in order to achieve transparent implementation. + +*** metalint + +Process '@' pre-processor lines, and signal mismatches, unrecognized +commands, etc... Also warn when testing wantedness of unknown symbols +or obsolete ones, etc... + +*** pat tools + +Clean that stuff. diff --git a/bin/Jmakefile b/bin/Jmakefile new file mode 100644 index 0000000..795cb7b --- /dev/null +++ b/bin/Jmakefile @@ -0,0 +1,45 @@ +/* + * Jmakefile for bin subdirectory. + */ + +;# $Id: Jmakefile,v 3.0.1.1 1994/01/24 13:42:53 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.1 1994/01/24 13:42:53 ram +;# patch16: added dependency generation stage +;# +;# Revision 3.0 1993/08/18 12:04:00 ram +;# Baseline for dist 3.0 netwide release. +;# + +BINPL = packinit manilist +BIN = manicheck $(BINPL) + +ShellScriptTarget($(BIN)) + +BINSH = \ +|expand f!$(BINPL)! + !f.SH \ +-expand \\ + +>SED +>RM +>MKDEP + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(BINSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>[ ]*\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + diff --git a/bin/Makefile.SH b/bin/Makefile.SH new file mode 100755 index 0000000..977ce80 --- /dev/null +++ b/bin/Makefile.SH @@ -0,0 +1,216 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] +: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=bin +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ + +######################################################################## +# Force 'make depend' to be performed first -- do not edit + +.FORCE_DEPEND:: + +all:: .FORCE_DEPEND + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.1 1994/01/24 13:42:53 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.1 1994/01/24 13:42:53 ram +# patch16: added dependency generation stage +# +# Revision 3.0 1993/08/18 12:04:00 ram +# Baseline for dist 3.0 netwide release. +# + +BINPL = packinit manilist +BIN = manicheck $(BINPL) + +all:: $(BIN) + +local_realclean:: + $(RM) $(BIN) + +manicheck: manicheck.SH + /bin/sh manicheck.SH + +packinit: packinit.SH + /bin/sh packinit.SH + +manilist: manilist.SH + /bin/sh manilist.SH + + +install:: $(SCRIPTS) $(LSCRIPTS) + @for file in $(SCRIPTS) $(LSCRIPTS); do \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(INSTALL) -c -m 555 $$file $(SCRIPTDIR)); \ + done + +deinstall:: + @for file in $(SCRIPTS) $(LSCRIPTS); do \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(RM) $(SCRIPTDIR)/$$file); \ + done + +install.man:: + @if test "$(MANSRC)"; then \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(SCRIPTS); do \ + (set -x; \ + $(INSTALL) -c -m 444 $$file.man $(MANSRC)/$$file.$(L)); \ + done; \ + else exit 0; fi + +deinstall.man:: + @if test "$(MANSRC)"; then \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(SCRIPTS); do \ + (set -x; $(RM) $(MANSRC)/$$file.$(L)); \ + done; \ + else exit 0; fi + +BINSH = \ + packinit.SH \ + manilist.SH + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(BINSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>[ ]*\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: local_clean +realclean: local_realclean +clobber: local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Empty rules for directories with no sub-directories -- do not edit + +install:: + @echo "install in $(CURRENT) done." + +deinstall:: + @echo "deinstall in $(CURRENT) done." + +install.man:: + @echo "install.man in $(CURRENT) done." + +deinstall.man:: + @echo "deinstall.man in $(CURRENT) done." + +Makefiles:: + +Makefiles.SH:: + +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/bin/manicheck.SH b/bin/manicheck.SH new file mode 100755 index 0000000..a2ea9dd --- /dev/null +++ b/bin/manicheck.SH @@ -0,0 +1,82 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting bin/manicheck (with variable substitutions)" +$spitshell >manicheck <>manicheck <<'!NO!SUBS!' +# $Id$ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# Original Author: Harlan Stenn +# +# $Log: manicheck.SH,v $ +# Revision 3.0.1.1 1993/08/19 06:41:51 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:04:02 ram +# Baseline for dist 3.0 netwide release. +# + +find . ! -type d -print | sed -e ' +s|^./|| +/RCS\//d +/UU\//d +/core$/d +/\.bak$/d +/\.orig$/d +' | sort > check.present + +manifest='' +if test -r MANIFEST.new; then + manifest='MANIFEST.new' +else + if test -r MANIFEST; then + manifest='MANIFEST' + else + echo "No MANIFEST.new or MANIFEST file--don't know what to look for." + fi +fi + +awk '{print $1}' $manifest | sort > check.expected + +comm -23 check.expected check.present > check.want +comm -13 check.expected check.present > check.extra + +rm -f check.expected check.present + +if test -s check.want; then + echo "Some files listed in $manifest are missing; see check.want." +else + rm check.want +fi + +if test -s check.extra; then + echo "Some files not listed in $manifest are present; see check.extra." +else + rm check.extra +fi +!NO!SUBS! +chmod 755 manicheck +$eunicefix manicheck diff --git a/bin/manicheck.man b/bin/manicheck.man new file mode 100644 index 0000000..e17352a --- /dev/null +++ b/bin/manicheck.man @@ -0,0 +1,51 @@ +''' $Id: manicheck.man,v 3.0 1993/08/18 12:04:02 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: manicheck.man,v $ +''' Revision 3.0 1993/08/18 12:04:02 ram +''' Baseline for dist 3.0 netwide release. +''' +''' +.TH MANICHECK 1 ram +.SH NAME +manicheck \- check manifest accuracy +.SH SYNOPSIS +.B manicheck +.SH DESCRIPTION +.I Manicheck +compares the files listed in your MANIFEST.new (or MANIFEST if that file +is not present) with the files within your distribution. It will report +files listed in the manifest but not present or files missing from your +manifest file. +.SH FILES +.I Manicheck +produces the following temporary files: +.TP 20 +.PD 0 +check.expected +lists filenames from manifest +.TP +check.present +lists all potential source files +.PD +.PP +If MANIFEST is not 100% accurate, the following files may be created: +.TP 20 +.PD 0 +check.extra +files not listed in manifest +.TP +check.want +files missing from manifest +.PD +.SH AUTHOR +Harlan Stenn +.SH "SEE ALSO" +manifake(1), makedist(1), manilist(1). diff --git a/bin/manilist.SH b/bin/manilist.SH new file mode 100755 index 0000000..75dd073 --- /dev/null +++ b/bin/manilist.SH @@ -0,0 +1,484 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting bin/manilist (with variable substitutions)" +$spitshell >manilist <>manilist <<'!NO!SUBS!' + +# This script scans the MANIFEST.new file and builds some reports. + +# The output can be somewhat changed to produce other kind of reports. +# The format is specified with a leading set of activation character, followed +# by a ':', and then a set of formatting macros. The leading characters tell +# when a report line shall be issued: +# a: all files (shortcut for 'ix') +# A: all files but the excluded ones +# f: report for files only +# d: report for directories only +# m: report for files/directories found in the MANIFEST.new +# n: report for files/directories not found in the MANIFEST.new +# i: included files are listed +# x: excluded files are listed +# Then a set of macros introduced by %: +# %c: the leading one character code defined as follows: +# . if the file is up to date (i.e. not newer than patchlevel.h) +# - if the file is present in the manifest but is missing +# > if the file has changed since last patch. +# + if the file is not present in the manifest but exists +# o if the file is not listed but exists and is older than patchlevel.h +# x if the file in manifest and exists but was excluded +# ? if the file in manifest but was excluded and does not exist +# %n: the name of the file (its path from the top directory) +# %t: time stamp of last modification +# %d: description from MANIFEST.new file, if any +# %s: size of the file, in bytes + +$format = 'A:%c %n'; + +# By default, only the source files whith the following extensions are reported +# (but a -a option will report ALL the files, and a -i option can specify some +# other extensions as well). +# .sh .SH .c .h .l .y .man + +@include = ('.sh', '.SH', '.c', '.h', '.l', '.y', '.man'); + +# By default, the following extensions are excluded from the list. More +# exclusions can be added with the -x option: +# ^core .o .bak .rej .new .old .orig ,v + +@exclude = ('^core', '.o', '.bak', '.rej', '.new', '.old', '.orig', ',v'); + +# The column separator character (or string) is used to separate each formatted +# column on the output. Formatting is requested by adding a '|' character in +# the format string. A new separator can be specified via the -C option. +# The maximum column size is fixed by the -L. + +$col_separator = ' '; +$col_size = ''; + +&profile; # Read ~/.dist_profile +require 'getopts.pl'; +require 'stat.pl'; +&usage unless &Getopts('abcdhntVi:f:p:s:w:x:C:L:I:X:'); + +&usage if $opt_h; +if ($opt_V) { + print "manilist $version PL$pl\n"; + exit 0; +} + +# Go to the top of the package, and update any file name given as argument +# by prepending the needed path. The process then performs a chdir to the +# top. +unless ($opt_b) { + chop($pwd = `pwd`) unless -f '.package'; + until (-f '.package') { + die "No .package file! Run packinit.\n" unless $pwd; + chdir '..' || die "Can't cd ..\n"; + $pwd =~ s|(.*)/(.*)|$1|; + $prefix = $2 . '/' . $prefix; + } + if ($prefix) { + for (@ARGV) { + s/^\.$/$prefix/ && next; + s/^/$prefix/ unless m|^[-/]|; + } + } +} + +# We now are at the top level + +# Build up the file hierarchy filter in @filter +foreach $entry (@ARGV) { + $entry =~ s|/$||; # Remove final / in directory names + if (-d $entry) { + push(@filter, "d:$entry"); + } elsif (-f $entry) { + push(@filter, "f:$entry"); + } else { + die "$entry: No such file or directory.\n"; + } +} + +$prefix = '.' unless $prefix; +($top = $prefix) =~ s|/$||; +$top = '.' if $opt_t; # Start from top, not from original dir +@ARGV = ($top) unless @ARGV; + +if ($opt_n) { # "manifest" files are found by scanning the directory + open(MANIFEST, "find @ARGV -print|") || die "Can't run find: $!\n"; + while () { + chop; + s|^./||; + push(@manifest, $_); + } + close MANIFEST; +} else { + $MANIFEST = $opt_f; + $MANIFEST = 'MANIFEST.new' unless $opt_f; + open(MANIFEST, $MANIFEST) || die "Can't open $MANIFEST: $!\n"; + while () { + chop; + s|^./||; + s|^(\S+)||; + local($name) = $1; + push(@manifest, $name); + m|^\s+(\d+)*\s*(.*)| && ($comment{$name} = $2); + } + close MANIFEST; +} + +# If we have to compare the files in the MANIFEST with the actual files on +# the file system, then grab them... +if ($opt_c && !$opt_n) { + open(FILES, "find @ARGV -print|") || die "Can't run find: $!\n"; + while () { + chop; + s|^./||; + push(@files, $_); + } + close FILES; +} + +# If there is a patchlevel.h file, get its time stamp. +$pl_mtime = 0; +$pl_mtime = (stat('patchlevel.h'))[$ST_MTIME] if -f 'patchlevel.h'; + +# Dealing with command-line options +$format = $opt_p if $opt_p; +$col_separator = $opt_C if $opt_C; +$col_size = $opt_L if $opt_L; +unless ($opt_p) { # -p may be used as a shortcut for -w and -s + local($which) = ($format =~ /^(\w+):/); + local($string) = ($format =~ /^\w+:(.*)/); + $which = $opt_w if $opt_w; + $string = $opt_s if $opt_s; + $format = "$which:$string"; +} +@include = split(' ', $opt_I) if $opt_I; # First reset included with -I +@exclude = split(' ', $opt_X) if $opt_X; # and excluded with -X +push(@include, split(' ', $opt_i)) if $opt_i; # before applying additions +push(@exclude, split(' ', $opt_x)) if $opt_x; +&mode_opt; # Compute $mode_xxx variables +&init_functions; # Compile &included and &excluded + +# Option -d requests dumping of inclusion and exclusion lists on stderr +if ($opt_d) { + print STDERR "Included: ", join(' ', @include), "\n"; + print STDERR "Excluded: ", join(' ', @exclude), "\n"; +} + +@manifest = sort @manifest; +@files = sort @files if defined(@files); + +# Build up the %manifest array so that we quickly know whether a file is in the +# manifest or not. +foreach (@manifest) { + ++$manifest{$_}; +} + +# Now loop other the files held in @manifest and perform your job... +foreach $mani (@manifest) { + if ($opt_c && !$opt_n) { # Check MANIFEST with actual files on disk + for (;;) { + $disk = $files[0]; # Next file coming up + last unless $disk; + last if $disk gt $mani; # Past the current point + shift(@files); # Remove the file from list + last if $disk eq $mani; # Reached the manifest point + # This means the file is before the current MANIFEST point + &report($disk); # File exists and not in MANIFEST + } + } + &report($mani); +} + +&flush_report; # Flush the @Report array if formatting is needed + +# Print usage and exit with a non-zero status +sub usage { + print STDERR < $pl_mtime; + $c_macro = 'x' if &excluded($file); + } else { + $c_macro = '-'; + $c_macro = '?' if &excluded($file); + } + } else { # File not in MANIFEST + if (-e $file) { # And file exists + $c_macro = $mtime < $pl_mtime ? 'o' : '+'; + } else { + return if -l $file; + warn "$file seems to have been removed...\n"; + } + } + + # Perform the macro substitution + $fmt =~ s/%%/\0/g; # Escape %% + $fmt =~ s/%/\01/g; # Transform %, in case substitution add some + $fmt =~ s/\01c/$c_macro/g; # %c is the code + $fmt =~ s/\01n/$file/g; # %n is the file name + $fmt =~ s/\01t/&fstamp/ge; # %t is the time stamp + $fmt =~ s/\01s/&fsize/ge; # %s is the file size, in bytes + $fmt =~ s/\01d/&mdesc/ge; # %d is the manifest description + $fmt =~ s/\01/%/g; # All other %'s are left undisturbed + + print "$fmt\n" unless $postproc; + push(@Report, $fmt) if $postproc; +} + +# Format and flush report on stdout. Columns are aligned on what was originally +# a '|' character in the format string, translated into a ^B by the reporting +# routine. +sub flush_report { + return unless @Report; # Early return if nothing to be done + local(@length); # Stores maximum length for each field + local(@max); # Maximum allowed column sizes + local($i); + local($report); + local($len); + local(@fields); + @max = split(',', $col_size); + foreach $report (@Report) { # First pass: compute fields lengths + $i = 0; + foreach (split(/\02/, $report)) { + $len = length($_); + $length[$i] = $length[$i] < $len ? $len : $length[$i]; + $i++; + } + } + for ($i = 0; $i < @length; $i++) { # Adapt to maximum specified length + $length[$i] = $max[$i] if $max[$i] > 0 && $length[$i] > $max[$i]; + } + foreach $report (@Report) { # Second pass: formats each line + @fields = split(/\02/, $report); + $i = 0; + foreach (@fields) { + $len = length($_); + if ($max[$i] > 0 && $len > $max[$i]) { + $_ = substr($_, 0, $max[$i]); # Truncate field + } else { + $_ .= ' ' x ($length[$i] - $len); # Pad with blanks + } + $i++; + } + print join($col_separator, @fields), "\n"; + } +} + +# The following macro subsitution functions are called with $file set + +# Return the modification time on file +sub fstamp { + (stat($file))[$ST_MTIME]; +} + +# Return the file size, in bytes +sub fsize { + (stat($file))[$ST_SIZE]; +} + +# Return the description from the MANIFEST file, if any +sub mdesc { + return '' unless defined $comment{$file}; + $comment{$file}; +} + +# Do we have to report informations on the specified file? +sub report_wanted { + return 1 unless @filter; + local($file) = @_; + local($filter); + foreach (@filter) { + $filter = $_; # Work on a copy + if ($filter =~ s/^d://) { + return 1 if $file =~ m|^$filter(/[^/]*)*|; + } else { + $filter =~ s/^f://; + return 1 if $filter eq $file; + } + } + return 0; +} + +# Build up the 'included' and 'excluded' functions which return true if a file +# is in the include or exclude set. +sub init_functions { + &build_function('included', *include, 1); + &build_function('excluded', *exclude, 0); +} + +# Build a function which returns true if a given name is found in the array +# list of regular expression. Each regular expression is applied on the file +# name, anchored at the end. False is returned only if none of the expressions +# match. The purpose of building such a function dynamically is to avoid the +# costly pattern recompilation every time. +sub build_function { + local($name) = shift(@_); # The name of the function to be built + local(*array) = shift(@_); # The extension array we have to check with + local($dflt) = shift(@_); # Default value when -a is used + local($fn) = &q(<> manilist +$grep -v '^;#' ../pl/profile.pl >> manilist +chmod 755 manilist +$eunicefix manilist diff --git a/bin/manilist.man b/bin/manilist.man new file mode 100644 index 0000000..f7dcd0d --- /dev/null +++ b/bin/manilist.man @@ -0,0 +1,332 @@ +''' $Id: manilist.man,v 3.0.1.3 1995/05/12 11:57:31 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: manilist.man,v $ +''' Revision 3.0.1.3 1995/05/12 11:57:31 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0.1.2 1994/01/24 13:52:55 ram +''' patch16: typo fix +''' +''' Revision 3.0.1.1 1993/08/24 12:11:02 ram +''' patch3: typo fix +''' +''' Revision 3.0 1993/08/18 12:04:04 ram +''' Baseline for dist 3.0 netwide release. +''' +''' +.TH MANILIST 1 ram +.SH NAME +manilist \- report status of files in a source directory +.SH SYNOPSIS +.B manilist +[ +.B \-abcdhnptV +] [ +.B \-i +.I extension +] [ +.B \-f +.I manifest +] [ +.B \-p +.I format +] [ +.B \-s +.I string +] [ +.B \-w +.I which +] [ +.B \-x +.I extension +] [ +.B \-C +.I separator +] [ +.B \-I +.I included +] [ +.B \-L +.I colsize +] [ +.B \-X +.I excluded +] [ +.I files or directories +] +.SH DESCRIPTION +.I Manilist +scans a source directory and produces a report on the status of each file: +whether it is up-to-date or not with respect to +.I patchlevel.h , +if it is missing from MANIFEST.new, and some other useful information which +may be dynamically configured. It can be use to maintain a MANIFEST.new file, +produce a detailed listing and status of a group of directories, etc... The +rich set of options concur to make \fImanilist\fR a perfect low-level tool. +.PP +Under its simplest invocation form at the top level directory of a package, +with no arguments, \fImanilist\fR will scan the MANIFEST.new and produce +a report on the status of each file listed there. Each line starts with a +single character flag which indicates the state of the file, followed by the +name of the file. +.PP +What happens in fact is more complex than that. \fIManilist\fR scans the +MANIFEST.new file and then loops over all the files listed there. Internally, +\fImanilist\fR maintains an inclusion and an exclusion list, both specifying +extensions for files. For instance, the inclusion list could be ('.c', '.h') +and the exclusion ('.o', ',v') so that C sources are included and object +or RCS files excluded. By default, all files but those excluded are used. +Some other selections may be applied at this stage, as will be explained later +on. For those files which pass this selection process, a report is issued +according to a report \fIformat\fR, which by default is "\fIA:%c %n\fR". +The letter \fIA\fR (or anything before the initial ':' character is the +file selection specification we've been talking about. The remaining is the +formatting, a string which is printed as-is, modulo some escape sequences. +It so happens that \fI%c\fR is the character flag and \fI%n\fR is the name +of the current file. +.PP +Generally speaking, \fImanilist\fR should be regarded as a tool which emits +configurable reports on a set of files, selectively picking them among a list +or by directly scanning the directories to see what's out there... +.PP +By specifying a set of directories or files as arguments on the command line, +you restrict the scanning area, limiting to reports concerning those files +or directories. If you do not specify any, manilist restricts its report to +the current directory and its subdirectories, unless the \fB\-t\fR option is +given. +.SH OPTIONS +.I Manilist +recognizes the following options: +.TP 15 +.B \-a +Make a report for \fIall\fR the files, regardless of what is specified by +the \fIincluded\fR and \fIexcluded\fR suffix lists. +.TP +.B \-b +Assume current directory is the base (root) of the package tree. When this +option is not specified, \fImanilist\fR will look for a \fI.package\fR file +to indicate the root directory of the package (also called the top) and +complain if it does not find it. +.TP +.B \-c +Check files against those listed in MANIFEST.new (or whatever file specified +via the \fB\-f\fR option) and report discrepancies via the \fI%c\fR macro. +.TP +.B \-d +Dump included and excluded suffix lists on stderr, extensions being space +separated. A good way to know the default lists is to run: \fImanilist +\-f /dev/null \-bd. +.TP +.B \-f\fI manifest +Specify an alternate manifest file, the default being to use MANIFEST.new. +.TP +.B \-h +Print the usage help message and exit. +.TP +.B \-i\fI extensions +Add new extensions to the included suffix list. The \fIextensions\fR argument +must list the suffixes separated by spaces, as in \fB\-i\fI '.ph .pl'\fR to add +both \fI.ph\fR and \fI.pl\fR to the existing suffixes. Note that the argument +needs to be quoted to protect spaces against shell interpretation. +.TP +.B \-n +Do not use any manifest file. Rather scan the directories and act as with all +the files there were already listed in a manifest. +.TP +.B \-p\fI format +Set the new printing format, which has the form \fIselection\fR:\fIstring\fR, +with \fIselection\fR being a list of single letters specifying which files +from the manifest are to be used for reports, and \fIstring\fR being a +message to print as report, with some macro substitutions. It is also possible +to have column formatting by specifying a '|' inside the string to delimit +the different columns you wish to see. See also \fB\-C\fR and \fB\-L\fR for +more formatting parameters. +.TP +.B \-s\fI string +Specify the \fIstring\fR part of the printing format (see \fB\-p\fR for a +general description of the \fIformat\fR). Available macros are listed further +down the manual page. +.TP +.B \-t +Start from the top directory (the root directory of the distribution) regardless +of the current directory. There must be a \fI.package\fR file to indicate +what the top directory is. +.TP +.B \-w\fI selection +Specifiy the \fIselection\fR part of the printing format. Available selections +will be discussed later. +.TP +.B \-x\fI extensions +Add new extensions to the excluded suffix list. The \fIextensions\fR argument +must list the suffixes separated by spaces, as in \fB\-x\fI '.s .p'\fR to add +both \fI.s\fR and \fI.p\fR to the existing list. Note that the argument +needs to be quoted to protect spaces against shell interpretation. +.TP +.B \-C\fI separator +Give the column separator, which is to be used in place of the '|' character +in the report format string. By default, it is a single space. +.TP +.B \-I\fI included +Specify a new list of suffixes to be included in the reports. This overrides +the original default list (whereas \fB\-i\fR is used to \fIadd\fR suffixes to +the list). Suffixes must be space separated. +.TP +.B \-L\fI colsize +When using column formatting (the '|' character being used to denote columns), +this option may be used to specify the maximum column width, separating each +width by a single ','. Leaving a width unspecified does not impose any limit +on its width. For instance, if the format string is \fI%n|%d|%t\fR, one could +limit the middle column (descriptions from MANIFEST.new) to 40 characters and +the name column (first one) to 15 characters, leaving the last one with no +imposed limits, by using \fB\-L\fI 15,40,\fR. +.TP +.B \-V +Print version number and exit. +.TP +.B \-X\fI excluded +Specify a new list of suffixes to be excluded in the reports. This overrides +the original default list (whereas \fB\-x\fR is used to \fIadd\fR suffixes to +the list). Suffixes must be space separated. +.SH USING FORMATS +The flexibility of \fImanilist\fR is brought by its use of a dynamic formatting +string for providing its reports. It is possible to specify a format via the +\fB\-p\fR option or just parts of it: the text string via \fB\-s\fR and the +file selection with \fB\-w\fR. +.SS "File Selection" +.PP +The leading part of the formatting string tells \fImanilist\fR which files you +wish to see in the final report. Available selectors are: +.sp +.PD 0 +.TP 5 +.B A +All the files but the excluded ones (i.e. those files whose suffix is listed +in the exclusion list). This is the default action. +.TP +.B a +All the files included and/or excluded (shortcut for \fIix\fR). Note that files +which are neither included nor excluded will not appear in the report. +.TP +.B d +Report only for directories. +.TP +.B f +Report only for files. +.TP +.B i +Only included files are listed. +.TP +.B m +Only those files or directories found in the manifest are listed. +.TP +.B n +Only those files or directories \fInot\fR found in the manifest are listed. +.TP +.B x +Only excluded files are listed. +.PD +.PP +When you specify more than one letter, the resulting report depends on the +nature of the selection. For \fId\fR, \fIf\fR, \fIm\fR and \fIn\fR, a logical +union is performed. This means specifying \fIfd\fR or \fImn\fR is the same +as not specifying anything, but it's less efficient since \fImanilist\fR is +forced to perform the checks it would otherwise bypass. The \fIi\fR and \fIx\fR +selectors are special: by default, all the files not excluded are reported. +Specifying \fIx\fR also asks for excluded files. Specifying \fIi\fR restricts +the report to the included files. Using both at the same time (\fIix\fR) will +force a report for files which are included or excluded. +.SS "Macro Substitution" +.PP +The string part of the report format can make use of the following macros: +.sp +.PD 0 +.TP 5 +%c +A character coding the status of the file. +.TP +%d +Description from the manifest file, if any. +.TP +%n +Name of the file (its path from the top directory). +.TP +%s +Size of the file, in bytes. +.TP +%t +Time stamp of the last modification. +.PD +.SS "File Status" +.PP +The \fI%c\fR macro, giving a single character coding the file status, can +expand into one of the following. +.PD 0 +.TP 5 +\&. +The file is up to date (not newer than \fIpatchlevel.h\fR). +.TP +- +The file is present in the manifest but is missing. +.TP +> +The file has been modified since last patch (newer than \fIpatchlevel.h\fR). +.TP ++ +The file exists but is not listed in the manifest. +.TP +o +The file exists but is not listed in the manifest and is older than +\fIpatchlevel.h\fR +.TP +x +The file is listed in the manifest and exists, but has been excluded. Naturally, +this will appear in the report only if the \fIx\fR selector is given in the +report format. +.TP +? +The file is listed in the manifest, does not exist, and was excluded. +.PD +.SH EXAMPLES +The command +.in +5 +.nf +.sp +\fImanilist -ct -p 'ni:%n'\fR +.sp +.fi +.in -5 +will list all the source files from your distribution which are not listed +in your MANIFEST.new file. Note that this includes only "source" files, that +is to say files whose extension is listed in the inclusion list. +If you do not wish this restriction, replace the formatting string with +\fIn:%n\fR (only the excluded files will not appear). +.PP +To build an initial MANIFEST file, use: +.in +5 +.nf +.sp +\fImanilist -n -p 'Af:%n' > MANIFEST\fR +.sp +.fi +.in -5 +from the top directory. You will eventually want to fill in descriptions for +each file listed in the manifest. +.SH FILES +.PD 0 +.TP 20 +MANIFEST.new +Default manifest file, listing files and giving a small description for each +of them. +.PD +.SH AUTHOR +Raphael Manfredi +.SH "SEE ALSO" +manifake(1), makedist(1), pat(1). diff --git a/bin/packinit.SH b/bin/packinit.SH new file mode 100755 index 0000000..c161093 --- /dev/null +++ b/bin/packinit.SH @@ -0,0 +1,447 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting bin/packinit (with variable substitutions)" +cat >packinit <>packinit <<'!NO!SUBS!' + +print < $mypackver) { + die "This .package file was produced by a newer packinit than I am.\n". + "Please find a packinit of version $packver or greater.\n"; + } +} elsif (-f '../.package' || -f '../../.package' || -f '../../../.package') { + die "Run in top level directory only.\n"; +} + +# Now set up to do reads with possible shell escape. +sub myread { + ($rp,$dflt) = @_; + $rp .= " [$dflt]"; + print "$rp "; + $ans='!'; + while ($ans =~ /^!/) { + $ans = ; + chop($ans); + if ($ans eq '!') { + system '/bin/sh'; + print "\n$rp "; + } elsif ($ans =~ s/^!//) { + system '/bin/sh', '-c', $ans; + print "\n$rp "; + } + } + $ans = $dflt if $ans eq ''; + $ans = '' if $ans eq 'none'; + $ans; +} + +$dflt = $package; +($dflt) = (`pwd | tr "[A-Z]" "[a-z]"` =~ m|.*/(.*)|) unless $package; + +print <; + $rcs = shift(@rcs); + if (! -f $rcs) { + $rcs = shift(@rcs); + if (! -f $1) { + print "I don't see any RCS files there (yet)."; + $dflt='1.1'; + } + } + $revs=0; + if ($dflt eq '') { + $rlog = `rlog $rcs`; + ($dflt) = ($rlog =~ /\nhead:\s*(\d+\.\d+)/); + $rlog = `rlog -r$dflt.1- -r$dflt.2- -r$dflt.3- -r$dflt.4- $rcs`; + ($revs) = ($rlog =~ /selected revisions:\s*([\d.]+)/); + $dflt='1.1' if $dflt eq ''; + } + + print < 1) { + print <.package') || die "Can't create .package"; +chop($date = `date`); +print PACKAGE <>packinit +$grep -v '^;#' ../pl/logname.pl >>packinit +$grep -v '^;#' ../pl/fullname.pl >>packinit +$grep -v '^;#' ../pl/tilde.pl >>packinit +chmod 755 packinit +$eunicefix packinit diff --git a/bin/packinit.man b/bin/packinit.man new file mode 100644 index 0000000..a43abdc --- /dev/null +++ b/bin/packinit.man @@ -0,0 +1,148 @@ +''' $Id: packinit.man,v 3.0.1.4 1995/07/25 13:31:38 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: packinit.man,v $ +''' Revision 3.0.1.4 1995/07/25 13:31:38 ram +''' patch56: fixed a typo +''' +''' Revision 3.0.1.3 1995/05/12 11:57:38 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0.1.2 1994/10/29 15:45:17 ram +''' patch36: added new variables cext, shext, changelog and changercs +''' +''' Revision 3.0.1.1 1994/01/24 13:54:31 ram +''' patch16: now documents variables set in .package by packinit +''' +''' Revision 3.0 1993/08/18 12:04:06 ram +''' Baseline for dist 3.0 netwide release. +''' +''' +.TH PACKINIT 1 ram +.SH NAME +packinit \- initialize or update your .package file +.SH SYNOPSIS +.B packinit +.SH DESCRIPTION +.B Packinit +will create (or update) a \fI.package\fR file, so that all the +.B dist +tools can be smart and know some basic things about your package, +such as its revision number, or the e-mail address of its maintainer. +.PP +.I Packinit +should be run from the top level directory of your package, before +using any other \fIdist\fR tool. Later on, you may rerun it to +update some of its values. +.I Packinit +will create a single file and leave the remaining of +your directory undisturbed. +.SH VARIABLES +.I Packinit +defines the following variables in your \fI.package\fR file: +.TP 15 +.PD 0 +baserev +The baseline revision number. +.TP +cext +The list (space separated) of file extensions identifying potential holders of +C symbols. This is added to the default .[chyl] extension lookup. +Shell-style patterns may be used. +.TP +changelog +The name of the \fIChangeLog\fR file managed by \fIpatlog\fR. +.TP +changercs +Boolean stating whether RCS logs are to be made part of \fIChangeLog\fR. +.TP +copyright +Name of the file used for Copyright expansion. +.TP +ftpdir +Directory where patches are located on the FTP site. +.TP +ftpsite +Name of the FTP site where patches may be retrieved from. +.TP +list_addr +Address of the package mailing list where users may post messages to. +.TP +list_manager +Type of list manager attached to the list administrative request address. +.TP +list_name +Name of the package users mailing list. +.TP +list_request +Address where subscribe and unsubscribe requests for the package mailing +list should be sent to. +.TP +list_sub +Format of the subscribe requests. +.TP +list_unsub +Format of the unsubscribe requests. +.TP +list_users +A boolean string set to 'true' when there is a mailing list set up for +discussion about the package. +.TP +mailagent +A boolean string set to 'true' when people are allowed to retrieve +patches via mailagent \fI@SH mailpatch\fR commands. +.TP +maintloc +E-mail address of the package maintainer, preferably in Internet format. +.TP +maintname +Full name of the package maintainer. +.TP +mydiff +Name of the \fIdiff\fR program to be used when computing a patch. +.TP +newsgroups +Newsgroup list where new patches should be posted to, empty for no +postings. +.TP +orgname +Full name of the organization where the package maitainer resides, or +path to a file containing that name. +.TP +package +Name of the package. +.TP +packver +Version of the \fIpackinit\fR program that built the \fI.package\fR file. +.TP +patchbranch +Name of the RCS branch used to store subsequent updates of a file after +a baseline has been released. +.TP +recipients +People who should be sent newly issued patches. +.TP +shext +The list (space separated) of file extensions identifying potential holders of +shell symbols. This is added to the default .SH extension lookup. +Shell-style patterns may be used. Note that only .SH extensions are looked +up by Configure for automatic shell extraction with variable substitutions, +no matter what this variable is set to. +.PD +.SH FILE +.TP 15 +\&.package +File holding all the package-related values +.SH AUTHORS +Larry Wall (version 2.0) +.br +Raphael Manfredi +.SH "SEE ALSO" +dist(1). diff --git a/bin/perload b/bin/perload new file mode 100755 index 0000000..2354790 --- /dev/null +++ b/bin/perload @@ -0,0 +1,648 @@ +: # feed this into perl +'/bin/true' && eval 'exec perl -S $0 "$@"' + if $running_under_some_shell; +'di'; +'ig00'; + +# +# This perl script is its own manual page [generated by wrapman] +# + +# $Id: perload,v 3.0.1.1 1994/10/29 15:45:36 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $Log: perload,v $ +# Revision 3.0.1.1 1994/10/29 15:45:36 ram +# patch36: added minimal support for perl5 dataloading +# +# Revision 3.0 1993/08/18 12:04:06 ram +# Baseline for dist 3.0 netwide release. +# + +# Replace each function definition in a loading section by two stubs and +# reject the definition into the DATA part of the script if in a dataload +# section or into a FILE if in an autoload section. + +$in_load = 0; # In a loading section +$autoload = ''; # Name of autoloaded file +$has_invocation_stub = 0; # True if we detect a #! stub +$current_package = 'main'; # Current package +$init_emitted = 0; # True when dataloading stamp was emitted +$in_function = 0; + +require 'getopt.pl'; +&Getopt; + +while (<>) { + if ($. == 1 && /^(:|#).*perl/) { # Invocation stub + $has_invocation_stub = 1; + print; + next; + } + if ($. <= 3 && $has_invocation_stub) { + print; + next; + } + if (/^\s*$/) { + &flush_comment; + print unless $in_function; + print if $in_function && !$in_load; + if ($in_function && $in_load) { + push(@Data, "\n") unless $autoload; + $Auto{$autoload} .= "\n" if $autoload; + } + next; + } + if (/^\s*;?#/) { + if (/#\s*perload on/i) { # Enter a loading section + print unless /:$/; + $in_load = 1; + next; + } + if (/#\s*perload off/i) { # End a loading section + print unless /:$/; + $in_load = 0; + next; + } + if (/#\s*autoload (\S+)/i) { # Enter autoloading section + print unless /:$/; + push(@autoload, $autoload); # Directives may be nested + $autoload = $1; + $in_load += 2; + next; + } + if (/#\s*offload/i) { # End autoloading section + print unless /:$/; + $autoload = pop(@autoload); # Revert to previously active file + $in_load -= 2; + next; + } + &emit_init unless $init_emitted; + push(@Comment, $_) unless $in_function; + print if $in_function && !$in_load; + next unless $in_function; + push(@Data, $_) unless $autoload; + $Auto{$autoload} .= $_ if $autoload; + next; + } + &emit_init unless $init_emitted; + /^package (\S+)\s*;/ && ($current_package = $1); + unless ($in_load) { + &flush_comment; + print; + next; + } + # We are in a loading section + if (/^sub\s+([\w']+)\s*\{(.*)/) { + die "line $.: function $1 defined within another function.\n" + if $in_function; + # Silently ignore one-line functions + if (/\}/) { + &flush_comment; + print; + next; + } + $comment = $2; + $in_function = 1; + $function = $1; + ($fn_package, $fn_basename) = $function =~ /^(\w+)'(\w+)/; + unless ($fn_package) { + $fn_package = $current_package; + $fn_basename = $function; + } + # Keep leading function comment + foreach (@Comment) { + push(@Data, $_) unless $autoload; + $Auto{$autoload} .= $_ if $autoload; + } + @Comment = (); + # Change package context for correct compilation: the name is visible + # within the original function package while the body of the function + # is compiled within the current package. + $declaration = "sub $fn_package" . "'load_$fn_basename {$comment\n"; + $package_context = "\tpackage $current_package;\n"; + if ($autoload) { + $Auto{$autoload} .= $declaration . $package_context; + } else { + push(@Data, $declaration, $package_context); + } + # Emit stubs + print "sub $fn_package", "'$fn_basename"; + print " { &auto_$fn_package", "'$fn_basename; }\n"; + print "sub auto_$fn_package", "'$fn_basename { "; + print '&main\'dataload' unless $autoload; + print '&main\'autoload(' . "'$autoload'" . ', @_)' if $autoload; + print "; }\n"; + next; + } + unless ($in_function) { + &flush_comment; + print; + next; + } + # We are in a loading section and inside a function body + push(@Data, $_) unless $autoload; + $Auto{$autoload} .= $_ if $autoload; + $in_function = 0 if /^\}/; + if (/^\}/) { + push(@Data, "\n") unless $autoload; + $Auto{$autoload} .= "\n" if $autoload; + } +} + +@auto = keys %Auto; +if (@auto > 0) { + print &q(<<'EOC'); +:# Load the calling function from file and call it. This function is called +:# only once per file to be loaded. +:sub main'autoload { +: local($__file__) = shift(@_); +: local($__packname__) = (caller(1))[3]; +: $__packname__ =~ s/::/'/; +: local($__rpackname__) = $__packname__; +: local($__saved__) = $@; +: $__rpackname__ =~ s/^auto_//; +: &perload'load_from_file($__file__); +: $__rpackname__ =~ s/'/'load_/; +: $@ = $__saved__; # Restore value $@ had on entrance +: &$__rpackname__(@_); # Call newly loaded function +:} +: +:# Load file and compile it, substituing the second stub function with the +:# loaded ones. Location of the file uses the @AUTO array. +:sub perload'load_from_file { +: package perload; +: local($file) = @_; # File to be loaded +: local($body) = ' ' x 1024; # Pre-extent +: local($load) = ' ' x 256; # Loading operations +: # Avoid side effects by protecting special variables which will be +: # changed by the autoloading operation. +: local($., $_, $@); +: $body = ''; +: $load = ''; +: &init_auto unless defined(@'AUTO); # Make sure we have a suitable @AUTO +: &locate_file unless -f "$file"; # Locate file if relative path +: open(FILE, $file) || +: die "Can't load $'__rpackname__ from $file: $!\n"; +: while () { +: $load .= '*auto_' . $1 . '\'' . $2 . '= *' . $1 . '\'' . "load_$2;\n" +: if (/^sub\s+(\w+)'load_(\w+)\s*\{/); +: $body .= $_; +: } +: close FILE; +EOC + if ($opt_t) { + print &q(<<'EOC'); +: # Untaint body when running setuid +: $body =~ /^([^\0]*)/; +: # No need to untaint $load, as it was built using trusted variables +: eval $1 . $load; +EOC + } else { + print &q(<<'EOC'); +: eval $body . $load; +EOC + } + print &q(<<'EOC'); +: chop($@) && die "$@, while parsing code of $file.\n"; +:} +: +:# Initialize the @AUTO array. Attempt defining it by using the AUTOLIB +:# environment variable if set, otherwise look in auto/ first, then in the +:# current directory. +:sub perload'init_auto { +: if (defined $ENV{'AUTOLIB'} && $ENV{'AUTOLIB'}) { +: @AUTO = split(':', $ENV{'AUTOLIB'}); +: } else { +: @AUTO = ('auto', '.'); +: } +:} +: +:# Locate to-be-loaded file held in $file by looking through the @AUTO array. +:# This variable, defined in 'load_from_file', is modified as a side effect. +:sub perload'locate_file { +: package perload; +: local($fullpath); +: foreach $dir (@'AUTO) { +: $fullpath = $dir . '/' . $file; +: last if -f "$fullpath"; +: $fullpath = ''; +: } +: $file = $fullpath if $fullpath; # Update var from 'load_from_file' +:} +: +EOC +} + +if (@Data > 0) { + print &q(<<'EOC'); +:# Load the calling function from DATA segment and call it. This function is +:# called only once per routine to be loaded. +:sub main'dataload { +: local($__packname__) = (caller(1))[3]; +: $__packname__ =~ s/::/'/; +: local($__rpackname__) = $__packname__; +: local($__at__) = $@; +: $__rpackname__ =~ s/^auto_//; +: &perload'load_from_data($__rpackname__); +: local($__fun__) = "$__rpackname__"; +: $__fun__ =~ s/'/'load_/; +: eval "*$__packname__ = *$__fun__;"; # Change symbol table entry +: die $@ if $@; # Should not happen +: $@ = $__at__; # Restore value $@ had on entrance +: &$__fun__; # Call newly loaded function +:} +: +:# Load function name given as argument, fatal error if not existent +:sub perload'load_from_data { +: package perload; +: local($pos) = $Datapos{$_[0]}; # Offset within DATA +: # Avoid side effects by protecting special variables which will be changed +: # by the dataloading operation. +: local($., $_, $@); +: $pos = &fetch_function_code unless $pos; +: die "Function $_[0] not found in data section.\n" unless $pos; +: die "Cannot seek to $pos into data section.\n" +: unless seek(main'DATA, $pos, 0); +: local($/) = "\n}"; +: local($body) = scalar(); +: local($*) = 1; +: die "End of file found while loading $_[0].\n" unless $body =~ /^\}$/; +EOC + if ($opt_t) { + print &q(<<'EOC'); +: # Untaint body when running setuid +: $body =~ /^([^\0]*)/; +: # Now we may safely eval it without getting an insecure dependency +: eval $1; # Load function into perl space +EOC + } else { + print &q(<<'EOC'); +: eval $body; # Load function into perl space +EOC + } + print &q(<<'EOC'); +: chop($@) && die "$@, while parsing code of $_[0].\n"; +:} +: +EOC + print &q(<<'EOC') unless $opt_o; +:# Parse text after the END token and record defined loadable functions (i.e. +:# those whose name starts with load_) into the %Datapos array. Such function +:# definitions must be left adjusted. Stop as soon as the function we want +:# has been found. +:sub perload'fetch_function_code { +: package perload; +: local($pos) = tell main'DATA; +: local($in_function) = 0; +: local($func_name); +: local($., $_); +: while () { +: if (/^sub\s+(\w+)'load_(\w+)\s*\{/) { +: die "DATA line $.: function $1'$2 defined within $func_name.\n" +: if $in_function; +: $func_name = $1 . '\'' . $2; +: $Datapos{$func_name} = $pos; +: $in_function = 1; +: next; +: } +: $in_function = 0 if /^\}/; +: next if $in_function; +: return $pos if $func_name eq $_[0]; +: $pos = tell main'DATA; +: } +: 0; # Function not found +:} +: +EOC + print &q(<<'EOC') if $opt_o; +:# This function is called only once, and fills in the %Datapos array with +:# the offset of each of the dataloaded routines held in the data section. +:sub perload'fetch_function_code { +: package perload; +: local($start) = 0; +: local($., $_); +: while () { # First move to start of offset table +: next if /^#/; +: last if /^$/ && ++$start > 2; # Skip two blank line after end token +: } +: $start = tell(main'DATA); # Offsets in table are relative to here +: local($key, $value); +: while () { # Load the offset table +: last if /^$/; # Ends with a single blank line +: ($key, $value) = split(' '); +: $Datapos{$key} = $value + $start; +: } +: $Datapos{$_[0]}; # All that pain to get this offset... +:} +: +EOC + print &q(<<'EOC'); +:# +:# The perl compiler stops here. +:# +: +:__END__ +: +:# +:# Beyond this point lie functions we may never compile. +:# +: +EOC + # Option -o directs us to optimize the function location by emitting an + # offset table, which lists all the position within DATA for each possible + # dataloaded routine. + if ($opt_o) { + print &q(<<'EOC'); +:# +:# DO NOT CHANGE A IOTA BEYOND THIS COMMENT! +:# The following table lists offsets of functions within the data section. +:# Should modifications be needed, change original code and rerun perload +:# with the -o option to regenerate a proper offset table. +:# +: +EOC + $trailing_message = &q(<<'EOC'); +: +:# +:# End of offset table and beginning of dataloading section. +:# +: +EOC + $pos = 0; # Offset relative to this point (start of table) + foreach (@Data) { + $Datapos{"$1\'$2"} = $pos - $now + if /^sub\s+(\w+)'load_(\w+)\s*\{/; # } for vi + $pos += length; + } + @poskeys = keys %Datapos; # Array of routine names (fully qualified) + + # Write out a formatted table, each entry stored on $entry bytes and + # formatted with the $format string. + ($entry, $format) = &get_format(*poskeys); + + # The total size occupied by the table is the size of one item times + # the number of items plus the final trailing message at the end of + # the table. + $table_size = $entry * @poskeys + length($trailing_message); + + # Output formatted table + foreach (sort @poskeys) { + printf($format, $_, $table_size + $Datapos{$_}); + } + print $trailing_message; + } + + # Output code for each dataloaded function + foreach (@Data) { + print; + } + print &q(<<'EOC'); +:# +:# End of dataloading section. +:# +: +EOC +} + +if (@auto > 0) { + mkdir('auto',0755) unless -d 'auto'; + foreach $file (@auto) { + unless (open(AUTO, ">auto/$file")) { + warn "Can't create auto/$file: $!\n"; + next; + } + print AUTO &q(<<'EOC'); +:# This file was generated by perload +: +EOC + print AUTO $Auto{$file}; + close AUTO; + } +} + +# Compute optimum format for routine offset table, returning both the size of +# each entry and the formating string for printf. +sub get_format { + local(*names) = @_; + local($name_len) = 0; + local($max_len) = 0; + foreach (@names) { + $name_len = length; + $max_len = $name_len if $name_len > $max_len; + } + # The size of each entry (preceded by one tab, followed by 12 chars) + $name_len = $max_len + 1 + 12; + ($name_len, "\t%${max_len}s %10d\n"); +} + +sub emit_init { + print &q(<<'EOC'); +:# +:# This perl program uses dynamic loading [generated by perload] +:# +: +:$ENV{LC_ALL} = 'C'; +: +EOC + $init_emitted = 1; +} + +sub flush_comment { + print @Comment if @Comment > 0; + @Comment = (); +} + +sub q { + local($_) = @_; + local($*) = 1; + s/^://g; + $_; +} + +# +# These next few lines are legal in both perl and nroff. +# + +.00; # finish .ig + +'di \" finish diversion--previous line must be blank +.nr nl 0-1 \" fake up transition to first page again +.nr % 0 \" start at page 1 +'; __END__ \" the perl compiler stops here + +''' +''' From here on it's a standard manual page. +''' + +.TH PERLOAD 1 "June 20, 1992" +.AT 3 +.SH NAME +perload \- builds up autoloaded and dataloaded perl scripts +.SH SYNOPSIS +.B perload +[ \fB\-ot\fR ] +[ \fIfile\fR ] +.SH DESCRIPTION +.I Perload +takes a perl script as argument (or from stdin if no argument is supplied) +and prints out on stdout an equivalent script set-up to perform autoloading +or dataloading. The translation is directed by special comments within the +original script. Using dynamic loading can drastically improve start-up +performances, both in time and in memory, as perl does not need to compile +the whole script nor store its whole compiled form in memory. +.PP +.I Autoloading +delays compilation of some functions until they are needed. The code for these +functions is loaded dynamically at run-time. The atomicity of loading is a +file, which means that putting more than one function into a file will cause +all these functions to be loaded and compiled as soon as one among them is +needed. +.PP +.I Dataloading +is a form of autoloading where no extra file are needed. The script carries +all the functions whose compilation is to be delayed in its data segment +(in the \fIperl\fR sense, i.e. they are accessible via the DATA filehandle). +The scripts parses the data segment and extracts only the code for the needed +subroutine, which means granularity is better than with autloading. +.PP +It is possible for a single script to use both autoloading and dataloading at +the same time. However, it should be noted that a script using only dataloading +is self contained and can be moved or shared accross different platforms without +fear. On the contrary, a script using only autoloading relies on some externally +provided files. Sharing this script among different platforms requires sharing +of these external files. The script itself cannot be redistributed without +also giving the extra files holding the autoloaded functions. +.PP +The major drawback with dataloading is that the DATA filehandle cannot be used +for anything else and may result in code duplication when two scripts could +share the same pieces of code. Autoloading appears as the perfect solution in +this case since two scripts may freely share the same functions without +actually duplicating them on the disk (hence saving some precious disk blocks +:-). +.SH CRITERIA +Functions to be dataloaded or autoloaded must meet the following layout +criteria: +.TP 5 +\- +They must not be one-line functions like \fIsub sorter { $a <=> $b }\fR. +Those functions are simply output verbatim, as they are already so +small that it would not be worth to dynamically load them, +.TP +\- +The first line must be of the form \fIsub routine_name {\fR, with an optional +comment allowed after the '{'. +.TP +\- +The function definition must end with a single '}' character left aligned. +.TP +\- +Package directives outside any function must be left aligned. +.PP +All the above restrictions should not be source of a problem if "standard" +writing style is used. There are also some name restrictions: the package +name \fIperload\fR is reserved, as is the \fI@AUTO\fR array when autoloading +is used. Packages must not start with \fIauto_\fR, as this is prepended to +user's package names when building the stubs. Furthermore, the subroutines +names \fImain'autoload\fR and +\fImain'dataload\fR must not be used by the original script. Again, these +should not cause any grief. +.SH DIRECTIVES +The translation performed by +.I Perload +is driven by some special comment directives placed directly within the code. +Ending those directives with a ':' character will actually prevent them from +being output into the produced script. Case is irrelevant for all the directives +and the comment need not be left-aligned, although it must be the first +non-space item on the line. +.PP +The following directives are available: +.TP 10 +# Perload ON +Turns on the \fIperload\fR processing. Any function definition which meets +the criteria listed in the previous section will be replaced by two stubs and +its actual definition will be rejected into the data segment (default) or a +file when inside an autoloading section. +.TP +# Perload OFF +Turns off any processing. The script is written as-is on the standard output. +.TP +# Autoload \fIpath\fR +Requests autoloading from file \fIpath\fR, which may be an absolute path or +a relative path. The file will be located at run-time using the @AUTO array +if a non-absolute path is supplied or if the file does not exist as listed. +Autoloading directives may be nested. +.TP +# Offload \fIpath\fR +The argument is not required. The directive ends the previous autoloading +directive (the inmost one). This does not turn off the \fIperload\fR processing +though. The \fIpath\fR name is optional here (in fact, it has only a comment +value). +.SH OPTIONS +Perload accepts only two options. Using \fB\-o\fR is meaningful only when +dataloading is used. It outputs an offset table which lists the relative +offset of the dataloaded functions within the data section. This will spare +perl the run-time parsing needed to locate the function, and results in an good +speed gain. However, it has one major drawback: it prevents people from +actually modifying the source beyond the start of the table. But anything +before can be freely edited, which is particulary useful when tailoring the +script. +.PP +This option should not be used when editing of functions within the data +section is necessary for whatever reason. When \fB\-o\fR is used, any +change in the dataloaded function must be committed by re-running perload +on the original script. +.PP +The other option \fB\-t\fR is to be used when producing a script which is +going to run setuid. The body of the loaded function is untainted before being +fed to eval, which slightly slows down loading (the first time the function is +called), but avoids either an insecure dependency report or weird warnings from +taintperl stating something is wrong (which is the behaviour with 4.0 PL35). +.SH FILES +.TP 10 +auto +the subdirectory where all produced autoloaded files are written. +.SH ENVIRONMENT +No environment variables are used by \fIperload\fR. However, the autoloaded +version of the script pays attention to the \fIAUTOLIB\fR variable as a colon +separated set of directories where the to-be-loaded files are to be found +when a non-absolute path was specified. If the \fIAUTOLIB\fR variable is not +set, the default value 'auto:.' is used (i.e. look first in the auto/ +subdirectory, then in the current directory. +.SH CAVEAT +Special care is required when using an autoloading script, especially when +executed by the super-user: it would be very easy for someone to leave a +special version of a routine to be loaded, in the hope the super-user (or +another suitable target) executes the autoloaded version of the script with +some \fIad hoc\fR changes... +.PP +The directory holding the to-be-loaded files should therefore be protected +against unauthorized access, and no file should have write permission on them. +The directory itself should not be world-writable either, or someone might +substitute his own version. +It should also be considered wise to manually set the @AUTO variable to a +suitable value within the script itself. +.PP +The \fB\-o\fR option uses \fIperl\fR's special variable \fI$/\fR with a +multi-character value. I suspect this did not work with versions of \fIperl\fR +prior to 4.0, so any script using this optimized form of dataloading will not +be 100% backward compatible. +.SH AUTHOR +Raphael Manfredi +.SH CREDITS +Valuable input came from Wayne H. Scott . He is +merely the author of the optimizing offset table (\fB\-o\fR option). +.PP +.I Perload +is based on an article from Tom Christiansen , +.I Autoloading in Perl, +explaining the concept of dataloading and giving a basic implementation. +.SH "SEE ALSO" +perl(1). diff --git a/dist.man b/dist.man new file mode 100644 index 0000000..4a7ab9a --- /dev/null +++ b/dist.man @@ -0,0 +1,317 @@ +''' $Id: dist.man,v 3.0.1.6 1995/05/12 11:57:53 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: dist.man,v $ +''' Revision 3.0.1.6 1995/05/12 11:57:53 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0.1.5 1994/10/29 15:46:03 ram +''' patch36: mentions new patlog script and ChangeLog file +''' +''' Revision 3.0.1.4 1994/05/06 13:54:17 ram +''' patch23: extended copyright notice to 1994 +''' patch23: new script kitpost +''' +''' Revision 3.0.1.3 1994/01/24 13:55:41 ram +''' patch16: documents profile and its components +''' +''' Revision 3.0.1.2 1993/11/10 17:31:03 ram +''' patch14: added mention for new confmagic.h file +''' +''' Revision 3.0.1.1 1993/08/24 12:12:00 ram +''' patch3: added entries for patnotify and patsnap +''' +''' Revision 3.0 1993/08/18 12:04:07 ram +''' Baseline for dist 3.0 netwide release. +''' +''' +.de Ex \" Start of Example +.sp +.in +5 +.nf +.. +.de Ef \" End of Example +.sp +.in -5 +.fi +.. +.TH DIST 1 ram +.SH NAME +dist \- introduction to dist +.SH DESCRIPTION +The \fIdist\fR package is a set of tools meant to ease the construction and +maintenance of portable software. There are four distinct parts in \fIdist\fR, +and it is also meant to be used with two external products, which are +publicly available: \fImailagent\fR and \fIpatch\fR. +.PP +The first component is the \fIConfigure\fR script generator, which is a +portability tool. It is automatically build up by \fImetaconfig\fR from your +sources and a set of units. Ideally, the end-user receiving your source code +will simply have to read your README file, run the \fIConfigure\fR script +(which is self-documented), and then run \fImake\fR. Your package should then +build cleanly on every UNIX platform. +.PP +The second component is the \fIMakefile.SH\fR generator, which is a generic +configured Makefile, reusing some of the information figured out by +.I Configure. +Although you may write your own Makefile and then use \fImakeSH\fR to transform +it into a \fIMakefile.SH\fR, it is better to write a generic \fIJmakefile\fR +description, which does not rely on a particular position within the source +tree, and then use \fIjmake\fR to recursively build your Makefiles. +.PP +The third component is the package generator, which is used when it's time +to build up the shell archives used to distribute your program. Although you +may use your own archiving mechanism, the one included here knows about RCS +files and will properly check out the lattest revisions, leaving your working +files alone. The \fImakedist\fR program will also perform Copyright expansion, +an useful feature when you share source files among more than one program, +placed under distinct Copyright information. +.PP +The fourth and latest component is the patch generator, used to make updates +of your sources, which can later be applied on the original distribution by +using the \fIpatch\fR program. +.PP +Before using any of the \fIdist\fR programs, you should probably identify your +package by running the \fIpackinit\fR program, which will create +a \fI.package\fR file in the top-level directory of your package. +.SH COMMANDS +The \fIdist\fR package implements the following commands (those +tagged as \fIlibrary\fR commands are to be found in the dist +library and should not be made publicly available in everyone's path): +.TP 15 +bindex +builds the \fIIndex\fR file (library). +.PD 0 +.TP +jmake +a Makefile.SH generator. +.TP +jmkmf +bootstraps top-level Makefile.SH file. +.TP +kitpost +posts distribution kits made by \fImakedist\fR. +.TP +kitsend +sends distribution kits made by \fImakedist\fR. +.TP +makeSH +wraps existing scripts into a .SH file. +.TP +makedist +builds up distribution kits. +.TP +makegloss +builds the \fIGlossary\fR file (library). +.TP +manicheck +checks MANIFEST.new accuracy +.TP +manifake +makes MANIFEST.new out of an existing MANIFEST. +.TP +manilist +builds MANIFEST.new reports. +.TP +metaconfig +a Configure script generator. +.TP +metalint +a metaconfig unit consistency checker. +.TP +metaxref +a metaconfig cross-reference builder. +.TP +packinit +initializes a package (creates a .package file). +.TP +pat +main patch generator. +.TP +patbase +resets patch base to current version. +.TP +patcil +checks new version in. +.TP +patclean +remove working version of up-to-date files. +.TP +patcol +checks file out. +.TP +patdiff +builds (contextual) diffs for the patch. +.TP +patftp +copies patches to public ftp directory. +.TP +patindex +builds a patch index. +.TP +patlog +handles ChangeLog file updates. +.TP +patmake +puts diffs together into a patch. +.TP +patnotify +notifies users that new patches have been released. +.TP +patpost +posts patch to some newsgroup. +.TP +patsend +mails patch to some people. +.TP +patsnap +builds a release snapshot with files and RCS revisions. +.PD +.SH PROFILE +Commands having a set of meaningful options (other +than \fB\-h\fR or \fB\-V\fR) can also take arguments from +the \fI~/.dist_profile\fR file, or whatever file the \fIDIST\fR +environment variable points to. Each line of the file is in the +format: +.Ex +profile-component: \fIvalue\fR +.Ef +whith shell-style comments (#) allowed provided they start the line. +.PP +Each command looks for a profile component entry matching its +name and loads the \fIvalue\fR as if it were arguments specified +on the command line. Those arguments precede any other argument +specified manually, in case order is meaningful. +.PP +Some commands may also be configured from within the profile, by setting +a specific \fIvariable\fR attached to the command by a profile +entry looking like this: +.Ex +cmdname-\fIvariable\fR: \fIvalue\fR +.Ef +For instance, assuming the variable \fIc-files\fR is recognized by the +\fImetaconfig\fR program, its default value could be overwritten by +this profile entry: +.Ex +metaconfig-c-files: \fIsuitable value\fR +.Ef +Only the first '-' after the command name is part of the syntax, the +other one used in the variable name is pure convention. Please refer to the +manual page of each command for a list of valid profile variables +which may be set. +.SH FILES +.PD 0 +.TP 15 +\&.MT +Temporary directory created by \fImetaconfig\fR and friends. +.TP +\&.newer +A list of files newer than \fIpatchlevel.h\fR, used by the patching tools. +.TP +\&.package +Main configuration file used by most of the dist tools to make them smart. +.TP +ChangeLog +The file where changes are recorded. Its name may be configured by +running \fIpackinit\fR, but this is the default "generic" name under +which it is referred to within the documentation. +.TP +Configure +The generated configuration script. +.TP +Glossary +A list of all the known portability symbols known by \fImetaconfig\fR. This +file is located in the dist library directory. +.TP +I.fui +Cross-reference file generated by \fImetaxref\fR, sorted by file, unit, item. +.TP +I.uif +Cross-reference file generated by \fImetaxref\fR, sorted by unit, item, file. +.TP +Index +A list of all the rules known by \fIjmake\fR. This file is located in the +dist library directory. +.TP +Jmakefile +Generic makefile description used by \fIjmake\fR. +.TP +MANIFEST +List of all the files to be included in the distribution. Usually a copy (not +a link) of MANIFEST.new. +.TP +MANIFEST.new +List of all the files to be taken into account by the dist tools. +.TP +Makefile.SH +The generated configured makefile (via Jmakefile) or hand-generated Makefile +making use of known metaconfig symbols. +.TP +Obsolete +A list of obsolete symbol used and their new equivalents. +.TP +RCS +Directory where RCS files are stored. +.TP +README +Main file explaining how to build your package. +.TP +U +Private unit directory. +.TP +Wanted +File used by \fImetaconfig\fR, listing all the symbols used by the sources. +.TP +bugs +Directory where patches are stored. +.TP +check.extra +Extra files present in MANIFEST.new, generated by \fImanicheck\fR. +.TP +check.want +Missing files from MANIFEST.new, generated by \fImanicheck\fR. +.TP +config_h.SH +Generated config.h template. +.TP +confmagic.h +Magic symbol remapping, activated via metaconfig's \fB\-M\fR option. +.TP +hints +This directory lists all the configuration hints for your package. +.TP +patchlevel.h +File recording your package patch level, should not be part of MANIFEST.new, +but may be listed in MANIFEST, at your discretion. +.TP +users +File recording the users of your package, generated by mailagent's \fIpackage\fR +command (see the MailAuthor.U unit and mailagent 3.0). +.PD +.SH ENVIRONMENT +The following environment variable is paid attention to: +.TP 15 +DIST +Location of the dist profile, defaults to ~/.dist_profile. This variable is +subject to ~name substitution, even if your shell does not support it. +.SH AUTHORS +By chronological order: +.sp +Larry Wall (dist 2.0 in 1988) +.br +Harlan Stenn (worked on dist 3.0 1990-1992) +.br +Raphael Manfredi (dist 3.0 and +integration 1991-1995) +.sp +Please look at the \fICredits\fR file in the distribution source tree for a +list of all the known contributors. +.SH "SEE ALSO" +jmake(1), metaconfig(1), pat(1). diff --git a/install.SH b/install.SH new file mode 100755 index 0000000..00055a2 --- /dev/null +++ b/install.SH @@ -0,0 +1,216 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting install (with variable substitutions)" +$spitshell >install <>install <<'!NO!SUBS!' + +mode="" +dst="" +src="" +dostrip="" +newdir="" +uid="" +gid="" + +# simulates mkdir -p +mkdir_p=' +name=$1; +create=""; +while $test $name; do + if $test ! -d "$name"; then + create="$name $create"; + name=`echo $name | $sed -e "s|^[^/]*$||"`; + name=`echo $name | $sed -e "s|\(.*\)/.*|\1|"`; + else + name=""; + fi; +done; +for file in $create; do + mkdir $file && $test $verbose && + echo "install: created directory $file" >&2; +done +' + +verbose='' + +while $test x$1 != x +do + case $1 in + -c) shift + continue + ;; + -m) mode="$2 " + shift + shift + continue + ;; + -o) uid="$2 " + shift + shift + continue + ;; + -g) gid="$2 " + shift + shift + continue + ;; + -s) dostrip="strip" + shift + continue + ;; + -d) newdir="$newdir$2 " + shift + shift + continue + ;; + -v) verbose='true' + shift + ;; + *) if $test x$src = x + then + src=$1 + else + dst=$1 + fi + shift + continue + ;; + esac +done + +# if -d option is used, we have to create the path given +if $test ! x$newdir = x +then + for i in $newdir + do + set x $i + shift + eval $mkdir_p + done + exit 0 # -d is the only action +fi + +if $test x$src = x +then + echo "install: no input file specified" >&2 + exit 1 +fi + +if $test x$dst = x +then + echo "install: no destination specified" >&2 + exit 1 +fi + +srcbase=`basename $src` +dstbase=`basename $dst` + +# If the destination is a directory, the target name is srcbase... +if $test -d $dst; then + dstbase=$srcbase +else + dst="`echo $dst | sed 's,^\(.*\)/.*$,\1,'`" + if $test ! -d $dst; then + dstbase=$dst + dst="." + fi +fi + +# If the src has a directory, extract the dir name... +if $test "$src" != "$srcbase" -a "$src" != "./$srcbase"; then + src="`echo $src | sed 's,^\(.*\)/.*$,\1,'`" +else + src="." +fi + +# dst is the destination directory and dstbase the base name. +# srcbase is the base name of source and src the source dir. + +srcpth=`(cd $src; pwd)`/$srcbase +destpth=`(cd $dst; pwd)`/$dstbase +if $test x$srcpth = x$destpth; then + $test $verbose && \ + echo "install: destination and source are identical" + exit 0 +fi + +# Do the install +( + cd $src + + if $test -f $dst/$dstbase; then + $rm -f $dst/$dstbase && $test $verbose && + echo "install: $dst/$dstbase removed" + fi + if $test -f $dst/$dstbase; then + $mv $dst/$dstbase $dst/OLD$dstbase && $test $verbose && + echo "install: $dst/$dstbase renamed as OLD$dstbase" + fi + + cp $srcbase $dst/$dstbase && $test $verbose && + echo "install: $srcbase installed as $dst/$dstbase" + + if $test ! x$dostrip = x; then + strip $dst/$dstbase 2>/dev/null && $test $verbose && + echo "install: stripped $dst/$dstbase" + fi + + if $test ! x$uid = x; then + $chown $uid $dst/$dstbase + fi + if $test ! x$gid = x; then + $chgrp $gid $dst/$dstbase + fi + if $test ! x$mode = x + then + $chmod $mode $dst/$dstbase + fi +) + +exit 0 +!NO!SUBS! +chmod 755 install +$eunicefix install diff --git a/jmake/Jmakefile b/jmake/Jmakefile new file mode 100644 index 0000000..81b9dc4 --- /dev/null +++ b/jmake/Jmakefile @@ -0,0 +1,51 @@ +/* + * Jmakefile for jmake + */ + +;# $Id: Jmakefile,v 3.0.1.2 1995/03/21 08:34:16 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.2 1995/03/21 08:34:16 ram +;# patch52: now installs new fixcpp script in the private libdir +;# +;# Revision 3.0.1.1 1994/01/24 13:42:36 ram +;# patch16: added dependency generation stage +;# +;# Revision 3.0 1993/08/18 12:04:09 ram +;# Baseline for dist 3.0 netwide release. +;# + +AllTarget(Index) + +Index: bindex + chmod +x bindex + ./bindex + +ShellScriptTarget(jmake jmkmf) +SimpleShellScriptTarget(bindex fixcpp) + +MakeInstallDirectories($(PRIVLIB) $(PRIVLIB)/files) +InstallNonExec(Index,$(PRIVLIB)) +InstallScript(bindex,$(PRIVLIB)) +InstallScript(fixcpp,$(PRIVLIB)/files) +InstallMultipleFlags(files/Jmake*,$(PRIVLIB)/files,-m 444) + +BINSH = jmake.SH fixcpp.SH + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(BINSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + diff --git a/jmake/Makefile.SH b/jmake/Makefile.SH new file mode 100755 index 0000000..e562274 --- /dev/null +++ b/jmake/Makefile.SH @@ -0,0 +1,300 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL70] +: $X-Id: Jmake.tmpl,v 3.0.1.3 1997/02/28 14:56:16 ram Exp ram $ + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=jmake +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.7 2004/08/22 08:28:58 ram Exp ram $ + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.2 1995/03/21 08:34:16 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.2 1995/03/21 08:34:16 ram +# patch52: now installs new fixcpp script in the private libdir +# +# Revision 3.0.1.1 1994/01/24 13:42:36 ram +# patch16: added dependency generation stage +# +# Revision 3.0 1993/08/18 12:04:09 ram +# Baseline for dist 3.0 netwide release. +# + +all:: Index + +local_realclean:: + $(RM) Index + +Index: bindex + chmod +x bindex + ./bindex + +all:: jmake jmkmf + +local_realclean:: + $(RM) jmake jmkmf + +jmake: jmake.SH + /bin/sh jmake.SH + +jmkmf: jmkmf.SH + /bin/sh jmkmf.SH + + +local_install:: $(SCRIPTS) $(LSCRIPTS) + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + for file in $(SCRIPTS) $(LSCRIPTS); do \ + (set -x; \ + $(INSTALL) -c -m 555 $$file $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + done + +local_deinstall:: + @for file in $(SCRIPTS) $(LSCRIPTS); do \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/$$file); \ + done + +local_install.man:: + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(MANSRC) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(MANSRC)); \ + for file in $(SCRIPTS); do \ + if test -f $$file.man; then \ + (set -x; \ + $(INSTALL) -c -m 444 $$file.man \ + $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)); \ + fi; \ + done + +local_deinstall.man:: + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(SCRIPTS); do \ + (set -x; $(RM) $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)); \ + done + +all:: bindex fixcpp + +local_realclean:: + $(RM) bindex fixcpp + +bindex: bindex.SH + /bin/sh bindex.SH + +fixcpp: fixcpp.SH + /bin/sh fixcpp.SH + + +local_install:: + + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for dir in $(PRIVLIB) $(PRIVLIB)/files; do \ + (set -x; test -d $(INSTALL_PREFIX)$$dir || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$$dir); \ + done + +local_deinstall:: + + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for dir in $(PRIVLIB) $(PRIVLIB)/files; do \ + (set -x; test -d $$dir && $(RM) -r $(INSTALL_PREFIX)$$dir); \ + done + +local_install:: Index + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)); \ + $(INSTALL) -c -m 444 Index $(INSTALL_PREFIX)$(PRIVLIB) + +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/Index + +local_install:: bindex + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)); \ + $(INSTALL) -c -m 555 bindex $(INSTALL_PREFIX)$(PRIVLIB) + +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/bindex + +local_install:: fixcpp + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB)/files || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)/files); \ + $(INSTALL) -c -m 555 fixcpp $(INSTALL_PREFIX)$(PRIVLIB)/files + +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/files/fixcpp + +local_install:: files/Jmake* + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB)/files || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)/files); \ + for i in files/Jmake*; do \ + (set -x; $(INSTALL) -c -m 444 $$i $(INSTALL_PREFIX)$(PRIVLIB)/files); \ + done + +local_deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in files/Jmake*; do \ + (set -x; $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/files/$$i); \ + done + +BINSH = jmake.SH fixcpp.SH + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(BINSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: local_clean +realclean: local_realclean +clobber: local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +install: local_install +install.man: maybe_install.man +deinstall: local_deinstall +deinstall.man: maybe_deinstall.man + +install.man-yes: local_install.man +install.man-no: +deinstall.man-yes: local_deinstall.man +deinstall.man-no: + +!NO!SUBS! +case "$installmansrc" in +'') man=no;; +*) man=yes;; +esac +$spitshell >>Makefile <>Makefile <<'!NO!SUBS!' + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Empty rules for directories with no sub-directories -- do not edit + +local_install:: + @echo "install in $(CURRENT) done." + +local_deinstall:: + @echo "deinstall in $(CURRENT) done." + +local_install.man:: + @echo "install.man in $(CURRENT) done." + +local_deinstall.man:: + @echo "deinstall.man in $(CURRENT) done." + +Makefiles:: + +Makefiles.SH:: + +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/jmake/NOTES b/jmake/NOTES new file mode 100644 index 0000000..a11618d --- /dev/null +++ b/jmake/NOTES @@ -0,0 +1,189 @@ +The syntax in Jmake.rules is not elegant at all, but: + + - It is easy to parse (like sendmail.cf or troff files). + - The rules are not supposed to change very often. + - It is simple enough to be mastered in five minutes. :-) + +Here is a small description: + +o To deal with various cpp implementations: + +Final @!\ means: end of line, next line starts at the left margin. +Final @@\ means: end of line, next line is to be indented by one tab. + +The conversion occurs during Pass1. + + +o Symbol definitions + +>SYMBOL: defines the symbol (Pass 1). +?SYMBOL:: keeps iff SYMBOL is defined (Pass 2). +%SYMBOL:: keeps iff SYMBOL is not defined (Pass 2). + +The ?SYM can be nested (logical AND), as in: + + ?SYMBOL:%TOKEN:text /* Keeps text if SYMBOL and not TOKEN */ + +To implement a logical OR, see below. + + +o Commands + +Commands can be passed to 'jmake'. They start with a leading '|'. + +Available commands are: + +|suffix : adds to the .SUFFIXES: list in the makefile (Pass 1 & 2). +|rule:: adds to the building rule section (Pass 1 & 2). +|rule: : same as before, with a leading tab. +|skip: skips text until a line starting with '-skip' is found (Pass 2). +|expand : expand lines until '-expand' with (Pass 2). +|once : text up to '-once' appears only the first time (Pass 1). + +Thus, a way to implement a logical OR could be: + + /* Implements SYMBOL or not TOKEN */ + ?SYMBOL:text /* Keeps text if SYMBOL */ + %SYMBOL:|skip + %TOKEN:text /* Keeps text if not TOKEN */ + -skip + +Actually, this is ugly, because the text has to appear twice. +Fortunately, I did not use it. :-) + +The '|' commands cannot be nested. In particular, due to the simple +implementation of '|skip', it is impossible to put '|skip' inside +a skipped part. However, a '|once' section may have '|skip' sections. + +But actually, as you have surely already guessed, the best way to +implement a logical OR is to use De Morgan's Law: + + not (p or q) <=> not p and not q + + /* Implements SYMBOL or not TOKEN (attempt #2) */ + %SYMBOL:?TOKEN:|skip + text /* If SYMBOL or not TOKEN */ + -skip + +Who said they don't care ? ;-) + +o Expansion + +Expansion is done with the 'expand' command. It has been provided to +avoid some cumbersome writings in makefiles when you have to repeat some +silly lines that only differ in file names, for instance. Let's look at +an example first: + + |expand a!foo bar! b!yes no! + !a:: + echo !a, !b + -expand + +Then two rules will be printed, and the values of (a,b) for the first +will be (foo, yes), for the second (bar, no). Substitution is controled +by the '!' character. If the word to be substituted is part of another +one, detach with the ^^ construct as in: !b^^c. It is possible to +use Makefile macros in the , and they will be expanded by +jmake. If this is not what you want, escape the first '$' sign (this is +a Makefile escape, i.e. you must double the '$', not precede it with a +backslash). A // stands for the null substitution value. + +Here is another example which shows how the macro Expand can be used. +It is defined in Jmake.rules as: + + #define Expand(rule, pattern) @!\ + |expand pattern @!\ + rule @!\ + -expand + +So we can write in the Jmakefile: + + |skip + A = foo bar + -skip + + #define Rule @!\ + $(DIR)/!a^^.o: !a^^.o @@\ + $(CC) -c !a^^.c @@\ + $(MV) !a^^.o $(DIR) + + Expand(Rule, a!$(A)!) + +which will generate in Makefile.SH: + + $(DIR)/foo.o: foo.o + $(CC) -c foo.c + $(MV) foo.o $(DIR) + + $(DIR)/bar.o: bar.o + $(CC) -c bar.c + $(MV) bar.o $$(DIR) + +The 'A' declaration has been surrounded by skip, so that it does +not appear in the generated Makefile.SH, but it will be taken into +account by jmake for the substitution in the pattern. + +The number of expansions is determined by the number of possible +values for the _first_ parameter. If other parameters have less +substitution values, they will get void ones. + +It is possible to add a regular expression at the end of '-expand'. +This regular expression will be removed from the final set of expansion +at the end of each line. It is also possible to do substitutions in the +expanded item, by using the syntax (if 'f' is the expanded variable) +!f:

= where

and are two regular expressions (without +spaces). The pattern

will be replaced by pattern (only the +first occurrence will be replaced). + +Finally, you may refer in the expanded section to variables whose value +is computed via another expansion, which makes it easy to define generic +Jmakefiles. + +Example: + + SRC = foo.c bar.c + OBJ = \ + |expand f!$(SRC)! + !f:\.c=\.o \ + -expand \\ + INC = \ + |expand f!$(OBJ)! + !f:\.o=\.h \ + -expand \\ + +which will generate in Makefile.SH: + + SRC = foo.c bar.c + OBJ = \ + foo.o \ + bar.o + INC = \ + foo.h \ + bar.h + +Do not forget to protect special characters in your regular expressions such +as backslash, point, etc... + +o Once + +The once command is tagged with a name. The first time the name appears, +the once construct is ignored and the text up to '-once' will be copied +in the generated Makefile.SH. However, future occurences of the same +name will be ignored (once will behave like skip). + +Example: + + |once this_is_a_name + + -once + +o Initializations + ++: Puts the whole line in the initialization section (Pass 1 & 2). +++SYMBOL : Adds to the SYMBOL macro (Pass 1 and 2). + +o User-defined variables + +CFLAGS: added flags to C compiler +DPFLAGS: cpp flags to be added to mkdep for dependency +LDFLAGS: flags/libraries to be added at linking stage diff --git a/jmake/README b/jmake/README new file mode 100644 index 0000000..636cc8f --- /dev/null +++ b/jmake/README @@ -0,0 +1,70 @@ +This is the root directory for jmake. + +The jmake program is a Makefile generator. It comes from 'imake' one +may find in the X11R4 distribution, but it produces a Makefile.SH +instead of a Makefile. Jmake has a template which knows some metaconfig +symbols and has built-in commands which make it more powerful than imake. + +The jmkmf script may be used to produce the Makefile.SH from a Jmakefile. +Once the bootstrap is done, you can run 'make Makefile.SH' to rebuild the +Makefile.SH in the current directory, or 'make Makefiles.SH' to build the +Makefiles in a recursive manner. + +All the rules used by jmake are listed in an automatically built index. +The jmake's cryptic syntax is documented in file NOTES. You may also +have a look at the sample Jmakefiles that come with this package. +Usually, you do not include them in the release, but I kept them so +that you may have a real example and see how things are organized. + +If you choose to use jmake, then you will have to use metaconfig, in +order to get a meaningful value for all the needed symbol. Thus, each +time you change your Jmakefiles, it may be necessary to update the +Configure script. + +Here is how to use jmake... + +First, you have to write a Jmakefile for each directory where you want +to put a Makefile. Be sure to declare all the sub-directories with the +SetSubdirs rule. Usually, the order of the rules is not significant, +but you should make sure the Makefile begins with an 'all::' target, +so that a default 'make' does not run a clean for instance. + +Then, if this is the first time, you have to bootstrap. Go to the main +directory of your package and run: + + jmkmf + make Makefiles.SH + +which will first produce the main makefile and then recursively build +all the makefiles. + +Once you have bootstrapped once, you can edit a Jmakefile and rebuild +the local makefile with + + make Makefile + +or all the hierachy below with: + + make Makefiles.SH + +If you want to extract all the makefiles, you may run + + sh Makefile.SH + make Makefiles + +in the top-level directory. Finally, if you only want to test the +generated Makefile.SH without disturbing the Makefile, run + + make Makefile.SH + +which will stop before running the produced file through sh. + + +CAUTION: + +On machines whose cpp eats up tabs in macro expansion, the Makefile.SH +produced might not be indented properly inside rules. + +Perl 4.0 PL10 sometimes dumps core, while PL3 does not. Thus, perl 4.0 +PL10 should NOT be used with jmake, at least on a MIPS. + diff --git a/jmake/bindex.SH b/jmake/bindex.SH new file mode 100755 index 0000000..3905f85 --- /dev/null +++ b/jmake/bindex.SH @@ -0,0 +1,185 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting bindex (with variable substitutions)" +$spitshell >bindex <>bindex <<'!NO!SUBS!' + eval 'exec perl -S $0 "$@"' + if $runnning_under_some_shell; + +# $Id$ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $Log: bindex.SH,v $ +# Revision 3.0.1.1 1993/08/19 06:42:12 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:04:13 ram +# Baseline for dist 3.0 netwide release. +# + +$file = "files/Jmake.rules"; + +open(INDEX, ">Index") || die "Cannot create Index.\n"; +open(RULES, "$file") || die "Cannot open $file.\n"; + +print INDEX +"[This Index is automatically generated from Jmake.rules file. Do not +edit this file or your changes will be lost. Edit Jmake.rules instead.] + +This file contains a listing of all the macros that can be used in a +Jmakefile. Only a few of these should be used in the Jmakefile (they +are the top-level macros). However, some low-level ones may be useful, +but it is up to you to make that decision. This explains why this file +holds all the available macros for jmake. + +In the following listing, the macros are separated by a line of dashes. +The signature of the macro is given, then a small comment of what it +does precedes the actual definition. + +Lines preceded by '->' show the set of symbols defined when the macro is +used. Initialization lines are shown as-is, i.e. have the form SYM = val +while concatenation is shown by SYM += val (which means val is added to +the value of SYM). + +Conditional lines are preceded by tests like (if SYM). This means the line +is to be kept if and only if the symbol SYM is defined. Other internal +requests are not formatted yet. + +"; +$inrule = 0; # Not inside a rule at the beginning +$incomment = 0; # Not inside a comment +$last_was_text = 0; # Last line was not a rule text +while () { + $inrule || next unless /^\s\*\s(\w+)\s*:/; + if ($inrule) { # We are already in a rule + if ($incomment) { + if (m|^\s*\*/|) { # End of comment + $incomment = 0; + $Comment{$current} .= "\n"; + } else { + s/^\s*\*\s*//; # Remove leading comment sign + $Comment{$current} .= " $_"; + } + next; # Anyway, go to next line + } + if (/^\s*$/) { # Empty line = end of rule + $inrule = 0; + next; + } + # Here, we have to print the body of the rule, after some cleaning + s/(@#|@@|@!)\\$//; # Remove final continuations + s/^(#define.*)\\/$1/; # Remove single '\' on first rule line + s/\|rule:\s*$/\n/; + s/\|rule:\s+/ /; # Remove rule markers + s/\|rule://; + s/%(\w+):\|skip/#ifdef $1/; # Deal with ugly skip syntax + s/\?(\w+):\|skip/#ifndef $1/; # Deal with ugly skip syntax + s/\-skip/#endif/; + s/\?(\w+):/(if $1) /; # Simple '?' test + s/%(\w+):/(not $1) /; # Simple '%' test + s/\|suffix/.SUFFIXES:/; # Make suffix command explicit + s/\t/ /g; # Expand all tabs to 4 chars + s/\s*$/\n/; # Remove any trailing space + s|\^\^\^|/***/|; # Change ^^^ to the more visual /***/ + s|\^\^|/**/|; # Restore ^^ to the more visual /**/ + if (/^$/) { # If empty line + $Index{$current} .= "\n" if $last_was_text; + $last_was_text = 0; + next; + } + if (/^[>+]/) { # Special commands + if (s/^>\s*//) { # Wanted symbol + chop; + $Wants{$current} .= " $_"; + } elsif (/^\+\+\s*(\S+)\s*(.*)/) { # Added symbol + $Added{$current} .= "\t$1 += $2\n"; + } else { + s/^\+\s*(.*)//; + $Init{$current} .= "\t$1\n"; + } + next; + } + if (s/^#define\s+//) { # Definition of the rule + chop; + $Sig{$current} = $_; # Signature of rule + } else { + $Index{$current} .= " $_"; # Rule's body + $last_was_text = 1; + } + } else { # We've just entered a rule + $current = $1; + next if $current =~ /patch\d/; # Skip RCS log messages + $inrule = 1; + $incomment = 1; # We're still in the leading comment + $Seen{$current} = 1; + $last_was_text = 0; + } +} +close RULES; + +# Now sort the rules in alphabetical order + +print INDEX '-' x 72, "\n"; +foreach $rule (sort(keys %Seen)) { + print INDEX "$Sig{$rule}:\n"; + print INDEX $Comment{$rule}; + $line = $Wants{$rule}; + if (length($line)) { + $line = "->$line."; + $line = &format($line); + print INDEX "$line\n"; + } + $line = $Init{$rule}; + print INDEX "$line\n" if length($line); + $line = $Added{$rule}; + print INDEX "$line\n" if length($line); + $line = $Index{$rule}; + print INDEX $line; + print INDEX "\n" if (length($line)); + print INDEX '-' x 72, "\n"; +} + +close INDEX; + +# Format $_ to fit in 80 columns (70 + size of tabs) +# Long lines are split, and the all but the first are indented +# by two leading spaces. The whole thing is then indented by +# one tab. +sub format { + local($tmp); + local($head) = ''; + local($_) = shift(@_); + while (length($_) > 70) { + $tmp = substr($_,0,70); + $tmp =~ s/^(.*) .*/$1/; + $head .= "\t$tmp\n"; + $_ = ' ' . substr($_,length($tmp),9999); + } + $head .= "\t$_\n"; +} +!NO!SUBS! +chmod 755 bindex +$eunicefix bindex diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules new file mode 100644 index 0000000..cf3e9d6 --- /dev/null +++ b/jmake/files/Jmake.rules @@ -0,0 +1,1801 @@ +;######################################################################## +;# Jmake rules for building libraries, programs, scripts, and data files +;# $Id: Jmake.rules,v 3.0.1.7 2004/08/22 08:28:58 ram Exp ram $ + +/* + * MACHINE-INDEPENDENT RULES -- DO NOT MODIFY + */ + +/* $Id: Jmake.rules,v 3.0.1.7 2004/08/22 08:28:58 ram Exp ram $ + * + * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi + * + * You may redistribute only under the terms of the Artistic Licence, + * as specified in the README file that comes with the distribution. + * You may reuse parts of this distribution only within the terms of + * that same Artistic Licence; a copy of which may be found at the root + * of the source tree for dist 4.0. + * + * $Log: Jmake.rules,v $ + * Revision 3.0.1.7 2004/08/22 08:28:58 ram + * patch71: random cleanup + * + * Revision 3.0.1.6 1997/02/28 14:56:01 ram + * patch61: now handles USRINC for dependencies + * patch61: smarter about dependencies computation + * + * Revision 3.0.1.5 1995/09/25 09:07:19 ram + * patch59: smarter sed command to strip /usr/include dependencies + * + * Revision 3.0.1.4 1995/07/25 13:33:59 ram + * patch56: install of script man pages can now cope with missing files + * patch56: the clobber target now removes the .config directory as well + * + * Revision 3.0.1.3 1995/03/21 08:35:28 ram + * patch52: suppressed extra argument to NormalProgramTarget call + * + * Revision 3.0.1.2 1995/01/11 14:49:55 ram + * patch45: new macros ShellScriptTargetExt and SimpleShellScriptTargetExt + * patch45: directory installation is now made via INSTALLDIR (Configure) + * + * Revision 3.0.1.1 1994/10/29 15:46:30 ram + * patch36: added RemoteDependency rule + * + * Revision 3.0 1993/08/18 12:04:14 ram + * Baseline for dist 3.0 netwide release. + * + */ + +/* Please, edit only with tabstops = 4 (":set ts=4" under vi) */ + +/* + * AddedByConfigure: + * Gives name of the files generated by Configure that can safely + * be removed when a "make clobber" is issued. Not that it is useless + * to name config.h or config.sh because these are already taken care + * of by jmake. + */ +#define AddedByConfigure(files) @!\ +local_clobber:: @@\ + $(RM) files + +/* + * AddSuffix: + * Adds a sufix to the .SUFFIXES: list. + */ +#define AddSuffix(ext) @!\ +|suffix ext + + +/* + * AllTarget: + * Generate rules to build necessary things during make all. + */ +#define AllTarget(depends) @!\ +all:: depends @!\ + @!\ +local_realclean:: @@\ + $(RM) depends + +/* + * RemoveTargetProgram: + * This is used in some other macros in order to remove the target + * before starting its building (saves disk space). There should be + * no '@!' at the end of the '#define' line, because this macro is + * used *inside* building rules. + */ +#define RemoveTargetProgram(program) \ + $(RM) program @@\ + if test -f program^^^$(_EXE); then \ @@\ + $(MV) program^^^$(_EXE) program^^~^^^$(_EXE); fi + +/* + * NormalProgramTarget: + * Generate rules to compile and link the indicated program; since + * it does not use any default object files, it may be used for + * multiple programs in the same Jmakefile. + */ +#define NormalProgramTarget(program,sources,objects) @!\ +++OBJECTS objects @!\ +++SOURCES sources @!\ +NormalObjectRule() @!\ +AllTarget(program) @!\ + @!\ +program: objects @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ objects $(JLDFLAGS) $(LIBS) @!\ + + +/* + * SingleProgramTarget: + * Obsolete version of NormalProgramTarget that doesn't have + * deplibs. + */ +#define SingleProgramTarget(program,objects,libs) \ +NormalProgramTarget(program,objects,libs) + +/* + * SimpleProgramTarget: + * Generate rules for compiling and linking programs that only have + * one C source file. It should only be used in Jmakefiles that + * describe a single program. + */ +#define SimpleProgramTarget(program) @!\ +NormalProgramTarget(program,program.c,program.o) + + + +/* + * ComplexProgramTarget: + * Generate rules for compiling and linking the program specified by + * $(OBJS) and $(SRCS), installing the program and its man page, and + * generating dependencies. It should only be used in Jmakefiles + * that describe a single program. + */ +#define ComplexProgramTarget(program) @!\ +++OBJECTS $(OBJS) @!\ +++SOURCES $(SRCS) @!\ +NormalObjectRule() @!\ +AllTarget(program) @!\ + @!\ +program: $(OBJS) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(OBJS) $(JLDFLAGS) $(LIBS) @!\ + @!\ +InstallProgram(program,$(BINDIR)) @!\ +InstallManPage(program,$(MANSRC)) @!\ +DependTarget() @!\ +LintTarget() + + +/* + * ComplexProgramTarget_1: + * Generate rules for compiling and linking the program specified by + * $(OBJS1) and $(SRCS1), installing the program and its man page, + * and generating dependencies for it and any programs described by + * $(SRCS2) and $(SRCS3). It should be used to build the primary + * program in Jmakefiles that describe multiple programs. + */ +#define ComplexProgramTarget_1(program) @!\ +++OBJECTS $(OBJS1) @!\ +++SOURCES $(SRCS1) @!\ +NormalObjectRule() @!\ +AllTarget(program) @!\ + @!\ +program: $(OBJS1) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(OBJS1) $(JLDFLAGS) $(LIBS) @!\ + @!\ +InstallProgram(program,$(BINDIR)) @!\ +InstallManPage(program,$(MANSRC)) @!\ + @!\ +DependTarget() @!\ +LintTarget() + + +/* + * ComplexProgramTarget_2: + * Generate rules for compiling and linking the program specified by + * $(OBJS2) and $(SRCS2) and installing the program and man page. + * It should be used to build the second program in Jmakefiles + * describing more than one program. + */ +#define ComplexProgramTarget_2(program) @!\ +++OBJECTS $(OBJS2) @!\ +++SOURCES $(SRCS2) @!\ +NormalObjectRule() @!\ +AllTarget(program) @!\ + @!\ +program: $(OBJS2) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(OBJS2) $(JLDFLAGS) $(LIBS) @!\ + @!\ +InstallProgram(program,$(BINDIR)) @!\ +InstallManPage(program,$(MANSRC)) + + +/* + * ComplexProgramTarget_3: + * Generate rules for compiling and linking the program specified by + * $(OBJS3) and $(SRCS3) and installing the program and man page. It + * should be used to build the third program in Jmakefiles describing + * more than one program. + */ +#define ComplexProgramTarget_3(program) @!\ +++OBJECTS $(OBJS3) @!\ +++SOURCES $(SRCS3) @!\ +NormalObjectRule() @!\ +AllTarget(program) @!\ + @!\ +program: $(OBJS3) @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@ $(OBJS3) $(JLDFLAGS) $(LIBS) @!\ + @!\ +InstallProgram(program,$(BINDIR)) @!\ +InstallManPage(program,$(MANSRC)) + + +/* + * ComplexShellManualTarget: + * Builds manual pages that are to be extracted from .SH files into + * .$manext files. + */ +#define ComplexShellManualTarget(manpages) @!\ +++MANPAGE manpages @!\ +|once _ShellManualRule_ @!\ +|rule:.SH.$manext: @!\ +|rule: /bin/sh $< @!\ +|rule: @!\ +-once @!\ +AddSuffix(.SH) @!\ +AddSuffix(.$manext) @!\ +AllTarget(manpages) @!\ + @!\ +local_install.man:: @@\ + _MakeInstallDirIgnore($(MANSRC)) \ @@\ + for file in manpages; do \ @@\ + (set -x; $(INSTALL) -c -m 444 $$file \ @@\ + $(INSTALL_PREFIX)$(MANSRC)) || exit 1; \ @@\ + done @!\ + @!\ +local_deinstall.man:: @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for file in manpages; do \ @@\ + (set -x; $(RM) $(INSTALL_PREFIX)$(MANSRC)/$$file); \ @@\ + done + + +/* + * Initialize: + * Puts the line symbol = value in the initialization section of + * Makefile.SH (the one that is subject to parameter substitutions). + */ +#define Initialize(symbol,value) @!\ ++symbol = value + + +/* + * InstallLibrary: + * Generate rules to install the indicated library. + */ +#define InstallLibrary(libname,dest) @!\ +local_install:: lib^^libname.a @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -m 644 lib^^libname.a $(INSTALL_PREFIX)^^^dest @@\ + $(RANLIB) dest/lib^^libname.a @@\ + chmod 444 dest/lib^^libnane.a @!\ + @!\ +local_deinstall:: @@\ + $(RM) $(INSTALL_PREFIX)^^^dest/lib^^libname.a + + +/* + * InstallSharedLibrary: + * Generate rules to install the shared library. + */ +#define InstallSharedLibrary(libname,rev,dest) @!\ +local_install:: lib^^libname.so.rev @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -m 444 lib^^libname.so.rev $(INSTALL_PREFIX)^^^dest @!\ + @!\ +local_deinstall:: @@\ + $(RM) $(INSTALL_PREFIX)^^^dest/lib^^libname.so.rev + + +/* + * InstallSharedLibraryData: + * Generate rules to install the shared library data + */ +#define InstallSharedLibraryData(libname,rev,dest) @!\ +local_install:: lib^^libname.sa.rev @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -m 444 lib^^libname.sa.rev $(INSTALL_PREFIX)^^^dest @!\ + @!\ +local_deinstall:: @@\ + $(RM) $(INSTALL_PREFIX)^^^dest/lib^^libname.sa.rev + + +/* + * InstallLibraryAlias: + * Generate rules to create a link from one library name to another + * for the purposes of aliasing. + */ +#define InstallLibraryAlias(libname,alias,dest) @!\ +local_install:: lib^^libname.a @@\ + $(RM) lib^^alias.a @@\ + -(cd dest; $(LN) lib^^libname.a lib^^alias.a) @!\ + @!\ +local_deinstall:: @@\ + $(RM) dest/lib^^alias.a + + +/* + * InstallLintLibrary: + * Generate rules to install the indicated lint library. + */ +#define InstallLintLibrary(libname,dest) @!\ +install.ln:: llib-l^^libname.ln @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -m 444 llib-l^^libname.ln $(INSTALL_PREFIX)^^^dest @!\ + @!\ +deinstall.ln:: @@\ + $(RM) $(INSTALL_PREFIX)^^^dest/llib-l^^libname.ln + + +/* + * InstallManPageLong: + * Generate rules to install the indicated manual page, giving it an + * alternate name. This is used for installing man pages whose base + * name without the .man suffix would normally be longer than 8 + * characters (the limit for using source code control systems on + * files systems with short file names). + */ +#define InstallManPageLong(file,destdir,dest) @!\ +local_install.man:: file.man @@\ + _MakeInstallDirIgnore(destdir) \ @@\ + $(INSTALL) -c -m 444 file.man $(INSTALL_PREFIX)^^^destdir/dest.$(L) @!\ + @!\ +local_deinstall.man:: @@\ + $(RM) $(INSTALL_PREFIX)^^^destdir/dest.$(L) @!\ + + +/* + * InstallManPage: + * Generate rules to install the indicated manual page. + */ +#define InstallManPage(file,dest) @!\ +InstallManPageLong(file,dest,file) + + +/* + * InstallNonExec: + * Generate rules to install a data file using any special + * install flags. + */ +#define InstallNonExec(file,dest) @!\ +local_install:: file @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -m 444 file $(INSTALL_PREFIX)^^^dest @!\ + @!\ +local_deinstall:: @@\ + $(RM) $(INSTALL_PREFIX)^^^dest/file + + +/* + * InstallProgramWithFlags: + * Generate rules to install an executable program using given + * install flags. + */ +#define InstallProgramWithFlags(program,dest,flags) @!\ +local_install:: program @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -s -m 555 flags program^^^$(_EXE) $(INSTALL_PREFIX)^^^dest @!\ + @!\ +local_deinstall:: @@\ + $(RM) $(INSTALL_PREFIX)^^^dest/program^^^$(_EXE) + + +/* + * InstallProgram: + * Generate rules to install an executable program using any special + * install flags set in $(INSTALLFLAGS). + */ +#define InstallProgram(program,dest) @!\ +InstallProgramWithFlags(program,dest,^^) + + +/* + * InstallScriptWithFlags: + * Generate rules to install an executable script using given + * install flags. + */ +#define InstallScriptWithFlags(script,dest,flags) @!\ +local_install:: script @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -m 555 flags script $(INSTALL_PREFIX)^^^dest @!\ + @!\ +local_deinstall:: @@\ + $(RM) $(INSTALL_PREFIX)^^^dest/script + + +/* + * InstallScript: + * Generate rules to install an executable script using any special + * install flags set in $(INSTALLFLAGS). + */ +#define InstallScript(script,dest) @!\ +InstallScriptWithFlags(script,dest,^^) + + +/* + * InstallScripts: + * Generate rules to install all the scripts listed in the generated + * $(SCRIPTS) and $(LSCRIPTS) macros. + */ +#define InstallScripts() @!\ +|once _InstallScripts_ @!\ +local_install:: $(SCRIPTS) $(LSCRIPTS) @@\ + _MakeInstallDirIgnore($(SCRIPTDIR)) \ @@\ + for file in $(SCRIPTS) $(LSCRIPTS); do \ @@\ + (set -x; \ @@\ + $(INSTALL) -c -m 555 $$file $(INSTALL_PREFIX)$(SCRIPTDIR)) || \ @@\ + exit 1; \ @@\ + done @!\ + @!\ +local_deinstall:: @@\ + @for file in $(SCRIPTS) $(LSCRIPTS); do \ @@\ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + (set -x; $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/$$file); \ @@\ + done @!\ +-once + +/* + * InstallManScripts: + * Generate rule to install/deinstall manual pages for scripts listed + * in the automatically generated $(SCRIPTS) macro. + */ +#define InstallManScripts() @!\ +|once _InstallManScripts_ @!\ +?NOMAN:|skip @!\ +local_install.man:: @@\ + _MakeInstallDirIgnore($(MANSRC)) \ @@\ + for file in $(SCRIPTS); do \ @@\ + if test -f $$file.man; then \ @@\ + (set -x; \ @@\ + $(INSTALL) -c -m 444 $$file.man \ @@\ + $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)) || \ @@\ + exit 1; \ @@\ + fi; \ @@\ + done @!\ + @!\ +local_deinstall.man:: @@\ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for file in $(SCRIPTS); do \ @@\ + (set -x; $(RM) $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)); \ @@\ + done @!\ + @!\ +-skip @!\ +-once + + + +/* + * LinkFileList: + * Link a list of list of files from one place to another + */ +#define LinkFileList(step,list,dir,sub) @!\ +step:: list @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + echo " cd" dir; cd dir; for i in list; do (set -x; $(LN) sub/$$i .); done + + +/* + * InstallMultipleDestFlags: + * Generate rules to install multiple files at once during a particular + * step in the build using a specific set of install flags. + */ +#define InstallMultipleDestFlags(step,list,dest,flags) @!\ +step:: list @@\ + _MakeInstallDirIgnore(dest) \ @@\ + for i in list; do \ @@\ + (set -x; $(INSTALL) -c flags \ @@\ + $$i $(INSTALL_PREFIX)^^^dest) || exit 1;\ @@\ + done + +/* + * DeinstallMultipleDest: + * Generate rules to deinstall multiple files at once during a particular + * step in the build. + */ +#define DeinstallMultipleDest(step,list,dest) @!\ +step:: @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for i in list; do \ @@\ + (set -x; $(RM) $(INSTALL_PREFIX)^^^dest/$$i); \ @@\ + done + +/* + * InstallMultiple: + * Generate rules to install multiple files at once during the install + * step of the build using any install flags set in $(INSTALLFLAGS) + * and deinstall them. + */ +#define InstallMultiple(list,dest) @!\ +InstallMultipleDestFlags(local_install,list,dest,$(INSTALLFLAGS)) @!\ +DeinstallMultipleDest(local_deinstall,list,dest) + + +/* + * InstallMultipleFlags: + * Generate rules to install multiple files at once during the + * install step of the build using the given install flags. + */ +#define InstallMultipleFlags(list,dest,flags) @!\ +InstallMultipleDestFlags(local_install,list,dest,flags) @!\ +DeinstallMultipleDest(local_deinstall,list,dest) + + +/* + * InstallMultipleMan: + * Generate rules to install a variety of manual pages + * during the install.man step of the build. + */ +#define InstallMultipleMan(list,dest) @!\ +InstallMultipleDestFlags(local_install.man,list,dest,$(INSTALLFLAGS)) @!\ +DeinstallMultipleDest(local_deinstall.man,list,dest) + + +/* + * DependDependency: + * Generate rules to build the makedepend program. + */ +#define DependDependency() @!\ +depend:: TOPDIR/mkdep @!\ + @!\ +TOPDIR/mkdep: @!\ +?TOP: @echo "You have to run Configure first."; exit 1 @!\ +%TOP: @echo "You have to run Configure in $(TOP) first."; exit 1 + + +/* + * DependTarget: + * Generate rules to compute dependencies for all files listed + * in $(SOURCES) (automatically generated macro). + */ +#define DependTarget() @!\ ++USRINC = $usrinc @!\ +|once _DependTarget_ @!\ +DependDependency() @!\ + @!\ +depend:: @@\ + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ @@\ + $(MKDEP) $(SOURCES) | \ @@\ + $(SED) -e 's:/usr/lib[^ ]*::g; s:$(USRINC)[^ ]*::g; ' \ @@\ + -e '/: / b print' -e '$$ b print' -e 'H; d; n; : print' \ @@\ + -e 'x; s/\\$$//; s/\\\n//g; s/ ^^ */ /g; s/ :/:/;' -e '/: *$$/d' \ @@\ + ) > Makefile.new @@\ + cp Makefile Makefile.bak @@\ + cp Makefile.new Makefile @@\ + $(RM) Makefile.new @!\ + @!\ +-once + + +/* + * CleanTarget: + * Generate rules to remove any garbage files. + */ +#define CleanTarget() @!\ +?SUBDIRS:clean: sub_clean local_clean @!\ +%SUBDIRS:clean: local_clean @!\ +?SUBDIRS:realclean: sub_realclean local_realclean @!\ +%SUBDIRS:realclean: local_realclean @!\ +?SUBDIRS:clobber: sub_clobber local_clobber @!\ +%SUBDIRS:clobber: local_clobber @!\ + @!\ +local_clean:: @@\ + if test -f core; then $(RM) core; fi @@\ + $(RM) *~ *.o @!\ + @!\ +local_realclean:: local_clean @!\ +?TOP: $(RM) -r UU @!\ + @!\ +local_clobber:: local_realclean @!\ +%TOP: $(RM) Makefile config.sh @!\ +?TOP: $(RM) config.sh config.h @!\ +?TOP: $(RM) -r .config @!\ +?TOP: $(RM) Makefile @!\ + + +/* + * InstallTarget: + * Generate rules to recursively install files + */ +#define InstallTarget() @!\ +?SUBDIRS:install: local_install sub_install @!\ +%SUBDIRS:install: local_install @!\ +?SUBDIRS:install.man: maybe_install.man sub_install.man @!\ +%SUBDIRS:install.man: maybe_install.man @!\ +?SUBDIRS:deinstall: sub_deinstall local_deinstall @!\ +%SUBDIRS:deinstall: local_deinstall @!\ +?SUBDIRS:deinstall.man: sub_deinstall.man maybe_deinstall.man @!\ +%SUBDIRS:deinstall.man: maybe_deinstall.man @!\ + @!\ +?MANSRC:install.man-yes: local_install.man @!\ +install.man-no: @!\ +?MANSRC:deinstall.man-yes: local_deinstall.man @!\ +deinstall.man-no: @!\ + + +/* + * TagsTarget: + * Generate rules to compute tags files for C source code. + */ +#define TagsTarget() @!\ +tags:: @@\ + $(CTAGS) -w *.[ch] @@\ + $(CTAGS) -xw *.[ch] > tags @!\ + @!\ +local_clobber:: @@\ + $(RM) tags + + + +/* + * BuildMakefileSH: + * Generate rules to build a Makefile.SH from an Jmakefile and any + * special jmake flags. This is generally done automatically by the + * template or by any special Jmakefiles. + * This function will simply touch Makefile.SH if no $(TOP)/.package + * exists, assuming the Jmakefile is not in a production environment. + */ +#define BuildMakefileSH(jmakeflags) @!\ +Makefile.SH: Jmakefile @@\ + -@if test -f $(TOP)/.package; then \ @@\ + if test -f Makefile.SH; then \ @@\ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ @@\ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ @@\ + fi; \ @@\ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" jmakeflags; \ @@\ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) jmakeflags; \ @@\ + else touch $@; fi + + +/* + * BuildMakefile: + * Generate rules to build a Makefile from a Makefile.SH. + */ +#define BuildMakefile() @!\ +Makefile: Makefile.SH @@\ + /bin/sh Makefile.SH + + +/* + * MakefileTarget: + * Generate rules to build a normal Makefile. + */ +#define MakefileTarget() @!\ +BuildMakefileSH(^^) @!\ +BuildMakefile() + + +/* + * NormalObjectRule: + * Generate make rule to build usual object files. + */ +#define NormalObjectRule() @!\ +|once _ObjectRule_ @!\ +|rule:.c.o: @!\ +|rule: $(CC) -c $(JCFLAGS) $< @!\ +|rule: @!\ +-once + +/* + * NormalLibraryObjectRule: + * Generate make rules to build "normal" objects. + */ +#define NormalLibraryObjectRule() @!\ +|once _ObjectRule_ @!\ +|rule:.c.o: @!\ +|rule: $(RM) $@ @!\ +|rule: $(CC) -c $(JCFLAGS) $< @!\ +|rule: @!\ +-once + +/* + * ProfiledLibraryObjectRule: + * Generate make rules to build both profiled and "normal" objects. + */ +#define ProfiledLibraryObjectRule() @!\ +all:: @@\ + @if [ ! -d profiled ]; then mkdir profiled; fi @!\ + @!\ +|rule:.c.o: @!\ +|rule: $(RM) $@ profiled/$@ @!\ +|rule: $(CC) -pg -c $(JCFLAGS) $*.c @!\ +|rule: $(MV) $*.o profiled/$*.o @!\ +|rule: $(CC) -c $(JCFLAGS) $*.c @!\ +|rule: @!\ +local_clean:: @@\ + -@if [ -d profiled ]; then echo " $(RM) profiled/?*.o"; \ @@\ + $(RM) profiled/?*.o; fi + + +/* + * DebuggedLibraryObjectRule: + * Generate make rules to build both debuggable and "normal" + * objects. + */ +#define DebuggedLibraryObjectRule() @!\ +all:: @@\ + @if [ ! -d debugger ]; then mkdir debugger; fi @!\ + @!\ +|rule:.c.o: @!\ +|rule: $(RM) $@ debugger/$@ @!\ +|rule: $(CC) -g -c $(JCFLAGS) $*.c @!\ +|rule: $(MV) $*.o debugger/$*.o @!\ +|rule: $(CC) -c $(JCFLAGS) $*.c @!\ +|rule: @!\ +local_clean:: @@\ + -@if [ -d debugger ]; then echo " $(RM) debugger/?*.o"; \ @@\ + $(RM) debugger/?*.o; fi + + +/* + * DebuggedAndProfiledLibraryOjbectRule: + * Generate make rules to build debuggable, profiled, and "normal" + * objects. + */ +#define DebuggedAndProfiledLibraryObjectRule() @!\ +all:: @@\ + @if [ ! -d profiled ]; then mkdir profiled; fi @@\ + @if [ ! -d debugger ]; then mkdir debugger; fi @!\ + @!\ +|rule:.c.o: @!\ +|rule: $(RM) $@ profiled/$@ debugger/$@ @!\ +|rule: $(CC) -pg -c $(JCFLAGS) $*.c @!\ +|rule: $(MV) $*.o profiled/$*.o @!\ +|rule: $(CC) -g -c $(JCFLAGS) $*.c @!\ +|rule: $(MV) $*.o debugger/$*.o @!\ +|rule: $(CC) -c $(JCFLAGS) $*.c @!\ +|rule: @!\ +local_clean:: @@\ + -@if [ -d profiled ]; then echo " $(RM) profiled/?*.o"; \ @@\ + $(RM) profiled/?*.o; fi @@\ + -@if [ -d debugger ]; then echo " $(RM) debugger/?*.o"; \ @@\ + $(RM) debugger/?*.o; fi + + +/* + * SharedLibraryObjectRule: + * Generate make rules to build shared and "normal" object files. + */ +#define SharedLibraryObjectRule() @!\ +all:: @@\ + @if [ ! -d shared ]; then mkdir shared; fi @!\ + @!\ +|rule:.c.o: @!\ +|rule: $(RM) $@ shared/$@ @!\ +|rule: $(CC) -pic -c $(SHAREDCODEDEF) $(SHLIBDEF) $(JCFLAGS) $*.c @!\ +|rule: $(MV) $*.o shared/$*.o @!\ +|rule: $(CC) -c $(SHLIBDEF) $(JCFLAGS) $*.c @!\ +|rule: @!\ +local_clean:: @@\ + -@if [ -d shared ]; then echo " $(RM) shared/?*.o"; \ @@\ + $(RM) shared/?*.o; fi + +/* + * SharedAndDebuggedLibraryObjectRule: + * Generate make rules to build shared, debuggable, and "normal" + * object files. + */ +#define SharedAndDebuggedLibraryObjectRule() @!\ +all:: @@\ + @if [ ! -d shared ]; then mkdir shared; fi @@\ + @if [ ! -d debugger ]; then mkdir debugger; fi @!\ + @!\ +|rule:.c.o: @!\ +|rule: $(RM) $@ shared/$@ debugger/$@ @!\ +|rule: $(CC) -pic -c $(SHAREDCODEDEF) $(SHLIBDEF) $(JCFLAGS) $*.c @!\ +|rule: $(MV) $*.o shared/$*.o @!\ +|rule: $(CC) -g -c $(SHLIBDEF) $(JCFLAGS) $*.c @!\ +|rule: $(MV) $*.o debugger/$*.o @!\ +|rule: $(CC) -c $(SHLIBDEF) $(JCFLAGS) $*.c @!\ +|rule: @!\ +local_clean:: @@\ + -@if [ -d shared ]; then echo " $(RM) shared/?*.o"; \ @@\ + $(RM) shared/?*.o; fi @@\ + -@if [ -d debugger ]; then echo " $(RM) debugger/?*.o"; \ @@\ + $(RM) debugger/?*.o; fi + +/* + * SpecialSharedAndDebuggedObjectRule: + * Generate rules to compile a file with special flags and to make + * shared and debuggable versions. + */ +#define SpecialSharedAndDebuggedObjectRule(objs,depends,options) @!\ +all:: @@\ + @if [ ! -d shared ]; then mkdir shared; fi @@\ + @if [ ! -d debugger ]; then mkdir debugger; fi @!\ + @!\ +objs: depends @@\ + $(RM) $@ shared/$@ debugger/$@ @@\ + $(CC) -pic -c $(SHAREDCODEDEF) $(SHLIBDEF) $(JCFLAGS) options $*.c @@\ + $(MV) $*.o shared/$*.o @@\ + $(CC) -g -c $(SHLIBDEF) $(JCFLAGS) options $*.c @@\ + $(MV) $*.o debugger/$*.o @@\ + $(CC) -c $(SHLIBDEF) $(JCFLAGS) options $*.c + +/* + * SpecialSharedObjectRule: + * Generate rules to compile a file with special flags and to make + * shared and debuggable versions. + */ +#define SpecialSharedObjectRule(objs,depends,options) @!\ +all:: @@\ + @if [ ! -d shared ]; then mkdir shared; fi @!\ + @!\ +objs: depends @@\ + $(RM) $@ shared/$@ @@\ + $(CC) -pic -c $(SHAREDCODEDEF) $(SHLIBDEF) $(JCFLAGS) options $*.c @@\ + $(MV) $*.o shared/$*.o @@\ + $(CC) -c $(SHLIBDEF) $(JCFLAGS) options $*.c + + +/* + * SpecialObjectRule: + * Generate rules to compile a file with special flags. + */ +#define SpecialObjectRule(objs,depends,options) @!\ +objs: depends @@\ + $(RM) $@ @@\ + $(CC) -c $(JCFLAGS) options $*.c + + +/* + * SpecialProfiledObjectRule: + * Generate rules to compile a file with special flags and to make a + * profiled version. + */ +#define SpecialProfiledObjectRule(objs,depends,options) @!\ +all:: @@\ + @if [ ! -d profiled ]; then mkdir profiled; fi @!\ + @!\ +objs: depends @@\ + $(RM) $@ profiled/$@ @@\ + $(CC) -pg -c $(JCFLAGS) options $*.c @@\ + $(MV) $*.o profiled/$*.o @@\ + $(CC) -c $(JCFLAGS) options $*.c + + +/* + * SpecialDebuggedObjectRule: + * Generate rules to compile a file with special flags and to make a + * debuggable version. + */ +#define SpecialDebuggedObjectRule(objs,depends,options) @!\ +all:: @@\ + @if [ ! -d debugger ]; then mkdir debugger; fi @!\ + @!\ +objs: depends @@\ + $(RM) $@ debugger/$@ @@\ + $(CC) -g -c $(JCFLAGS) options $*.c @@\ + $(MV) $*.o debugger/$*.o @@\ + $(CC) -c $(JCFLAGS) options $*.c + + +/* + * SpecialDebuggedAndProfiledObjectRule: + * Generate rules to compile a file with special flags and to make + * debuggable and profiled versions. + */ +#define SpecialDebuggedAndProfiledObjectRule(objs,depends,options) @!\ +all:: @@\ + @if [ ! -d profiled ]; then mkdir profiled; fi @@\ + @if [ ! -d debugger ]; then mkdir debugger; fi @!\ + @!\ +objs: depends @@\ + $(RM) $@ profiled/$@ debugger/$@ @@\ + $(CC) -pg -c $(JCFLAGS) options $*.c @@\ + $(MV) $*.o profiled/$*.o @@\ + $(CC) -g -c $(JCFLAGS) options $*.c @@\ + $(MV) $*.o debugger/$*.o @@\ + $(CC) -c $(JCFLAGS) options $*.c + + +/* + * NormalLibraryTarget: + * Generate rules to create a library. The 'srclist' and 'objlist' + * parameters are added to SOURCES and OBJECTS macros. The 'srclist' + * is not otherwise used by this rule, but is necessary for make depend. + */ +#define NormalLibraryTarget(libname,srclist,objlist) @!\ +++OBJECTS objlist @!\ +++SOURCES srclist @!\ +NormalLibraryObjectRule() @!\ +AllTarget(lib^^libname.a) @!\ + @!\ +lib^^libname.a: objlist @@\ + $(RM) $@ @@\ + $(AR) $@ objlist @@\ + $(RANLIB) $@ + + +/* + * NormalSharedLibraryTarget: + * Generate rules to create a shared library; build it into a + * different name so that the we don't hose people by having the + * library gone for long periods. + */ +#define NormalSharedLibraryTarget(libname,rev,solist) @!\ +AllTarget(lib^^libname.so.rev) @!\ + @!\ +lib^^libname.so.rev: solist @@\ + $(RM) $@~ @@\ + (cd shared; $(LD) -o ../$@~ -assert pure-text solist) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ + +/* + * NormalSharedLibraryDataTarget: + * Generate rules to create shlib data file; build it into a + * different name so that the we don't hose people by having the + * library gone for long periods. + */ +#define NormalSharedLibraryDataTarget(libname,rev,salist) @!\ +AllTarget(lib^^libname.sa.rev) @!\ + @!\ +lib^^libname.sa.rev: salist @@\ + $(RM) $@ @@\ + $(AR) $@ salist @@\ + $(RANLIB) $@ + + +/* + * NormalLibraryTarget2: + * Generate rules to create a library in two steps. This is used to + * create libraries with large numbers of files. + */ +#define NormalLibraryTarget2(libname,srclist,objlist1,objlist2) @!\ +++SOURCES srclist @!\ +++OBJECTS objlist1 @!\ +++OBJECTS objlist2 @!\ +NormalLibraryObjectRule() @!\ +AllTarget(lib^^libname.a) @!\ + @!\ +lib^^libname.a: objlist1 objlist2 @@\ + $(RM) $@ @@\ + $(AR) $@ objlist1 @@\ + $(AR) $@ objlist2 @@\ + $(RANLIB) $@ + + +/* + * ProfiledLibraryTarget: + * Generate rules to create a profiled library. + */ +#define ProfiledLibraryTarget(libname,srclist,objlist) @!\ +++SOURCES srclist @!\ +++OBJECTS objlist @!\ +AllTarget(lib^^libname^^_p.a) @!\ + @!\ +lib^^libname^^_p.a: objlist @@\ + $(RM) $@ @@\ + cd profiled; $(AR) ../$@ objlist @@\ + $(RANLIB) $@ + + +/* + * DebuggedLibraryTarget: + * Generate rules to create a debuggable library. + */ +#define DebuggedLibraryTarget(libname,srclist,objlist) @!\ +++SOURCES srclist @!\ +++OBJECTS objlist @!\ +AllTarget(lib^^libname^^_d.a) @!\ + @!\ +lib^^libname^^_d.a: objlist @@\ + $(RM) $@ @@\ + cd debugger; $(AR) ../$@ objlist @@\ + $(RANLIB) $@ + + +/* + * AliasedLibraryTarget: + * Generate rules to link one library to another. + */ +#define AliasedLibraryTarget(libname,alias) @!\ +AllTarget(lib^^alias.a) @!\ + @!\ +lib^^alias.a: lib^^libname.a @@\ + $(RM) $@ @@\ + $(LN) lib^^libname.a $@ + + +/* + * PrelinkedRelocatableTarget: + * Generate rules to produce a relocatable object file instead of a + * library. + */ +#define PrelinkedRelocatableTarget(objname,objlist,libs) @!\ +AllTarget(objname.o) @!\ + @!\ +objname.o: objlist @@\ + $(RM) $@ @@\ + $(LD) $(JLDFLAGS) -r objlist -o $@ libs + + +/* + * NormalObjectTarget: + * Generate rules to produce a single object file.o from a file.c. + */ +#define NormalObjectTarget(file) @!\ +++SOURCES file^^.c @!\ +AllTarget(file^^.o) @!\ +NormalObjectRule() + +/* + * NormalRelocatableTarget: + * Generate rules to produce a relocatable object file instead of a + * library. + */ +#define NormalRelocatableTarget(objname,objlist) @!\ +AllTarget(objname.o) @!\ + @!\ +objname.o: objlist @@\ + $(RM) $@ @@\ + $(LD) $(JLDFLAGS) -r objlist -o $@ + + +/* + * ProfiledRelocatableTarget: + * Generate rules to produce a profiled relocatable object file + * instead of a library. + */ +#define ProfiledRelocatableTarget(objname,objlist) @!\ +AllTarget(objname^^_p.o) @!\ + @!\ +objname^^_p.o: objlist @@\ + $(RM) $@ @@\ + $(LD) -X -r objlist -o $@ + + +/* + * DebuggedRelocatableTarget: + * Generate rules to produce a debuggable relocatable object file + * instead of a library. + */ +#define DebuggedRelocatableTarget(objname,objlist) @!\ +AllTarget(objname^^_d.o) @!\ + @!\ +objname^^_d.o: objlist @@\ + $(RM) $@ @@\ + $(LD) -X -r objlist -o $@ + +/* + * LintLibraryTarget: + * Generate rules to create a lint library. Note that the lint + * library is always forced to be newer than the library itself. + */ +#define LintLibraryTarget(libname,srclist) @!\ +lintlib:: llib-l^^libname.ln @!\ + @!\ +llib-l^^libname.ln: srclist @@\ + $(RM) $@ @@\ + $(LINT) $(LINTLIBFLAG)^^libname $(LINTFLAGS) srclist + + +/* + * NormalLintTarget: + * Generate rules to lint a set of sources. + */ +#define NormalLintTarget(srclist) @!\ +lint: @@\ + $(LINT) $(LINTFLAGS) srclist $(LINTLIBS) + + +/* + * LintTarget: + * Generate rules to lint $(SOURCES) (automatically generated) + */ +#define LintTarget() @!\ +|once _LintTarget_ @!\ +NormalLintTarget($(SOURCES)) @!\ +-once + + +/* + * LinkSourceFile: + * Snag source file from some other directory + */ +#define LinkSourceFile(src,dir) @!\ +src: dir/src @@\ + $(RM) $@ @@\ + $(LN) $? $@ @!\ + + +/* + * MakeSubincludesForBuild: + * Make includes in sub directories. + */ +#define MakeSubincludesForBuild(step,dir,srclist) @!\ +step:: dir srclist @@\ + @-(list=`echo srclist | sed -e 's/[^ ]*\///g'`; \ @@\ + set -x; cd dir; $(RM) $$list) @@\ + @for i in srclist; do \ @@\ + (set -x; cd dir; $(LN) ../$$i .) || exit 1; \ @@\ + done @!\ + @!\ +MakeDirectories(dir,dir) @!\ + @!\ +local_realclean:: @@\ + @-(if [ -d dir ]; then \ @@\ + list=`echo srclist | sed -e 's/[^ ]*\///g'`; \ @@\ + set -x; cd dir; $(RM) $$list; fi) + + +/* + * CommonSubdirsRule: + * Rule for making $(TARGET) in every subdirectory, with $(VERB) as + * verbose message and $(FLAGS) as additional flags. + */ +#define CommonSubdirsRule(dirs) @!\ +subdirs: @@\ + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ @@\ + for i in dirs ;\ @@\ + do \ @@\ + (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ @@\ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)) || exit 1; \ @@\ + done + + +/* + * NamedTargetSubdirsRule: + * Recursively make a series of steps in the specified directories. + */ +#define NamedTargetSubdirsRule(dirs,name,verb,flags) @!\ +name:: @@\ + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ @@\ + for i in dirs ;\ @@\ + do \ @@\ + (cd $$i ; echo verb "in $(DIR)$$i..."; \ @@\ + $(MAKE) $(MFLAGS) flags name) || exit 1; \ @@\ + done + + +/* + * NamedTargetSubdirs: + * Recursively make a series of steps. + */ +#define NamedTargetSubdirs(name,verb,flags) @!\ +name:: @@\ + @$(MAKE) subdirs TARGET=name VERB=verb FLAGS=flags + + +/* + * NamedSubTargetSubdirs: + * Recursively make a series of steps, like NamedTargetSubdirs. + * However, the supplied "name" has "sub_" prefixed to it. + */ +#define NamedSubTargetSubdirs(name,verb,flags) @!\ +sub_^^^name:: @@\ + @$(MAKE) subdirs TARGET=name VERB=verb FLAGS=flags + +/* + * NamedDepthTargetSubdirs: + * Recursively make a series of steps. We first enter the + * subdirectories, then perform the local entries. + * The supplied "name" has "sub_" prefixed to it. + */ +#define NamedDepthTargetSubdirs(name,verb,flags) @!\ +sub_^^^name:: @@\ + @$(MAKE) subdirs TARGET=name VERB=verb FLAGS=flags @@\ + @echo "Back to $(CURRENT) for "name^^... + + +/* + * MakeSubdirs: + * Generate rules to do makes in the given subdirectories. + */ +#define MakeSubdirs() \ +NamedTargetSubdirs(all,"Making all",^^) + + +/* + * DependDirs: + * Generate rules to recursively compute dependencies as part of the + * make depend step. + */ +#define DependDirs(dirs) \ +NamedTargetSubdirsRule(dirs,depend,"Depending",^^) + + +/* + * DependSubdirs: + * Generate rules to recursively compute dependencies as part of the + * make depend step. + */ +#define DependSubdirs() \ +DependDirs($(SUBDIRS)) + + +/* + * InstallSubdirs: + * Generate rules to recursively install and deinstall programs and + * files. + */ +#define InstallSubdirs() \ +NamedSubTargetSubdirs(install,"Installing",^^) @!\ +NamedDepthTargetSubdirs(deinstall,"Deinstalling",^^) + + +/* + * InstallManSubdirs: + * Generate rules to recursively install and deinstall manual pages. + */ +#define InstallManSubdirs() \ +NamedSubTargetSubdirs(install.man,"Installing man pages",^^) @!\ +NamedDepthTargetSubdirs(deinstall.man,"Deinstalling man pages",^^) + + +/* + * IncludesSubdirs: + * Generate rules to recursively put include files in build + */ +#define IncludesSubdirs() \ +NamedTargetSubdirs(includes,including,^^) + + +/* + * CleanSubdirs: + * Generate rules to recursively clean out garbage files. + */ +#define CleanSubdirs() \ +NamedDepthTargetSubdirs(clean,"Cleaning",^^) @!\ +NamedDepthTargetSubdirs(realclean,"Real cleaning",^^) @!\ +NamedDepthTargetSubdirs(clobber,"Clobbering",^^) + + +/* + * TagSubdirs: + * Generate rules to recursively create tags files. + */ +#define TagSubdirs(dirs) \ +NamedTargetSubdirsRule(dirs,tag,"Tagging",^^) + +/* + * MakeLintSubdirs: + * Generate rules to recursively lint directories as part of the + * named step. + */ +#define MakeLintSubdirs(dirs,target) \ +NamedTargetSubdirsRule(dirs,target,"Linting",^^) + + +/* + * LintDirs: + * Generate rules to recursively lint directories as part of the + * make lint step. + */ +#define LintDirs(dirs) \ +MakeLintSubdirs(dirs,lint) + + +/* + * LintSubdirs: + * Generate rules to recursively lint directories as part of the + * make lint step. + */ +#define LintSubdirs() \ +LintDirs($(SUBDIRS)) + + +/* + * MakeDirs: + * Creates a set of directories, even if some directories in the path + * do not already exist. There should be no '@!' at the end of the + * '#define' line, because this macro is used *inside* building rules. + */ +#define MakeDirs(dirs) \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for dir in dirs; do \ @@\ + (set -x; test -d $$dir || $(INSTALLDIR) $$dir) || \ @@\ + exit 1; \ @@\ + done + +/* + * _MakeInstallDirs: + * Creates a set of intall directories, even if some directories in the path + * do not already exist. There should be no '@!' at the end of the + * '#define' line, because this macro is used *inside* building rules. + */ +#define _MakeInstallDirs(dirs) \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for dir in dirs; do \ @@\ + _MakeInstallDir($$dir) \ @@\ + done + +/* + * _MakeInstallDir: + * Internal macro to create a missing install directory. + */ +#define _MakeInstallDir(dir) \ + (set -x; test -d $(INSTALL_PREFIX)^^^dir || \ @@\ + $(INSTALLDIR) $(INSTALL_PREFIX)^^^dir); + +/* + * _MakeInstallDirIgnore: + * Same as _MakeInstallDir but handles "make -i" as well. + */ +#define _MakeInstallDirIgnore(dir) \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + _MakeInstallDir(dir) + +/* + * _RmInstallDirs: + * Removes a set of intall directories. + * There should be no '@!' at the end of the '#define' line, because this + * macro is used *inside* building rules. + */ +#define _RmInstallDirs(dirs) \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + for dir in dirs; do \ @@\ + (set -x; test -d $$dir && $(RM) -r $(INSTALL_PREFIX)$$dir); \ @@\ + done + +/* + * MakeDirectories: + * Generate rules to create a hierarchy of directories. + */ +#define MakeDirectories(step,dirs) @!\ +step:: @!\ + MakeDirs(dirs) + + +/* + * MakeInstallDirectories: + * Generate a rule to create a set of directories at installation + * time (removed by deinstall). + */ +#define MakeInstallDirectories(dirs) @!\ +local_install:: @@\ + _MakeInstallDirs(dirs) @!\ + @!\ +local_deinstall:: @@\ + _RmInstallDirs(dirs) + + +/* + * MakeLintLibSubdirs: + * Generate rules to recursively create lint libraries. + */ +#define MakeLintLibSubdirs(dirs) @!\ +MakeLintSubdirs(dirs,lintlib) + + +/* + * MakeMakeSubdirs: + * Generate rules to recursively recreate target as part of the + * specified step in the build. This assumes Makefile.SH has + * already been built (which is the case for a delivery), but does + * not rely on the existence of a Makefile. + */ +#define MakeMakeSubdirs(target) @!\ +target:: @@\ + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ @@\ + for i in $(SUBDIRS);\ @@\ + do \ @@\ + echo "Making "target" in $(DIR)$$i..."; \ @@\ + (cd $$i || exit 1; \ @@\ + if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ @@\ + $(MAKE) $(MFLAGS) target) || exit 1;\ @@\ + done + + +/* + * MakeMakefilesSH: + * Generate rules to recursively recreate target as part of the + * specified step in the build. If $(TOP) is set to an absolute + * path, don't prepend the ../ prefix. This makes running things + * outside of the source tree to be much easier. + */ +#define MakeMakefilesSH() @!\ +Makefiles.SH:: Makefile.SH @@\ + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ @@\ + for i in $(SUBDIRS);\ @@\ + do \ @@\ + case "$(DIR)$$i/" in \ @@\ + ^^*^^/^^*^^/^^*^^/^^*^^/) newtop=../../../..;; \ @@\ + ^^*^^/^^*^^/^^*^^/) newtop=../../..;; \ @@\ + ^^*^^/^^*^^/) newtop=../..;; \ @@\ + *^^/) newtop=..;; \ @@\ + esac; \ @@\ + case "$(TOP)" in \ @@\ + /^^*) newtop="$(TOP)" ;; \ @@\ + esac; \ @@\ + echo "Making Makefiles.SH in $(DIR)$$i..."; \ @@\ + (cd $$i || exit 1; \ @@\ + if test -f Jmakefile; then \ @@\ + $(MAKE) $(MFLAGS) -f ../Makefile \ @@\ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i && \ @@\ + $(MAKE) $(MFLAGS) Makefiles.SH; \ @@\ + fi; \ @@\ + ) || exit 1; \ @@\ + done + + +/* + * MakefileSubdirs: + * Generate rules to create Makefiles. + */ +#define MakefileSubdirs() @!\ +MakeMakeSubdirs(Makefiles) @!\ +MakeMakefilesSH() + + +/* + * CppScriptTarget: + * Generate rules to create a shell script by running the input + * through cpp. + */ +#define CppScriptTarget(dst,src,defs,deplist) @!\ +dst:: src deplist @@\ + $(RM) $@ @@\ + $(CPP) defs $@ @@\ + chmod a+x $@ + + +/* + * MakeScriptFromCpp: + * Generate rules to create a script from a file with a + * .cpp suffix. + */ +#define MakeScriptFromCpp(name,defs) @!\ +CppScriptTarget(name,name.cpp,defs,^^) + + +/* + * ShellScriptTargetExt: + * Generate rules to create and install a set of scripts from + * ext files (.sh and .SH are the most common examples). Man pages + * derived from the name of the scripts are also installed unless + * NoManPages() is specified. + */ +#define ShellScriptTargetExt(scripts,ext) @!\ +++SCRIPTS scripts @!\ +SimpleShellScriptTargetExt(scripts,ext) @!\ +InstallScripts() @!\ +InstallManScripts() + + +/* + * ShellScriptTarget: + * Generate rules to create and install a set of scripts from + * .SH files. Man pages derived from the name of the scripts are + * also installed unless NoManPages() is specified. + */ +#define ShellScriptTarget(scripts) @!\ +ShellScriptTargetExt(scripts,.SH) + + +/* + * SimpleShellScriptTargetExt: + * Generate rules to create a set of scripts from ext files where + * ext is usually something like .sh or .SH, or whatever file + * extension you like.. + */ +#define SimpleShellScriptTargetExt(scripts,ext) @!\ +AllTarget(scripts) @!\ + @!\ +|expand s!scripts! @!\ +!s: !s^^ext @@\ + /bin/sh !s^^ext @!\ + @!\ +-expand + + +/* + * SimpleShellScriptTarget: + * Generate rules to create a set of scripts from .SH files. + */ +#define SimpleShellScriptTarget(scripts) @!\ +SimpleShellScriptTargetExt(scripts,.SH) + + +/* + * ShellScriptLongTarget: + * Generate rules to create a set of scripts from .SH files where + * the name of the generated file is different from the basename of + * the .SH file (when, for instance, the total length with the .SH + * extension would not leave enough space for RCS ,v extension). + */ +#define ShellScriptLongTarget(basename,scriptname) @!\ +++LSCRIPTS scriptname @!\ +AllTarget(scriptname) @!\ + @!\ +scriptname: basename^^.SH @@\ + /bin/sh basename^^.SH @!\ + @!\ +InstallScripts() @!\ +?NOMAN:|skip @!\ +InstallManPageLong(basename,$(MANSRC),scriptname) @!\ +-skip + + +/* + * ForceTarget: + * The force target will force reconstruction of all the other + * targets which include .FORCE in their own dependencies. + */ +#define ForceTarget() @!\ +|once _force_ @!\ +.FORCE: @!\ + @!\ +-once + + +/* + * RemoteTargetDependency: + * A local target may rely on a remote dependency (e.g. a library) + * made in a separate directory. This rule explicits the dependency + * and forces a make of that dependency in the remote directory. + */ +#define RemoteTargetDependency(target,directory,dependency) @!\ +RemoteDependency(directory,dependency) @!\ +target: directory/^^^dependency @!\ + + +/* + * RemoteDependency: + * Specify rules for making a remote dependency. + */ +#define RemoteDependency(directory,dependency) @!\ +ForceTarget() @!\ +|once =directory/^^^dependency= @!\ +directory/^^^dependency: .FORCE @@\ + @echo "Checking "^^^dependency" in "^^^directory"..." @@\ + cd ^^^directory; $(MAKE) ^^^dependency @@\ + @echo "Continuing in $(CURRENT)..." @!\ + @!\ +-once + +/* + * SetSubdirs: + * Actually forces the definition of SUBDIRS, and lets the user + * specify what the sub-directories are. This will be added to the + * customization part. + */ +#define SetSubdirs(subdirs) @!\ +>SUBDIRS @!\ ++SUBDIRS = subdirs + + +/* + * NoManPages: + * Actually forces the definition of NOMAN, which tells the jmake + * program to not generate rules for installing manual pages. + */ +#define NoManPages() @!\ +>NOMAN + + +/* + * Expand: + * This powerful macro expands the `rule' given a `pattern'. It + * relies on a built-in command in jmake. The expansion is + * documented in the short notes file that comes with jmake and + * gives some insights on the internal syntax. + */ +#define Expand(rule, pattern) @!\ +|expand pattern @!\ +rule @!\ +-expand + + +/* + * Lex and yacc stuff. + */ + +/* + * YaccRule: + * This is the rule which is used to build a .c file from a .y file. + */ +#define YaccRule() @!\ +AddSuffix(.y) @!\ +|once _YaccRule_ @!\ +|rule:.y.c: @!\ +|rule: $(YACC) $(JYFLAGS) $< @!\ +|rule: $(MV) y.tab.c $@ @!\ +|rule: @!\ +-once + +/* + * SimpleYaccTarget: + * Declare a yacc base.y file to be used in the building of the + * specified target program. The source file must be given without + * its final .y extension. The name of the .c and .o will be + * derived from the source file basename provided. + */ +#define SimpleYaccTarget(program,base) @!\ +++SOURCES base.y @!\ +++OBJECTS base.o @!\ +YaccRule() @!\ +program: base.c @!\ + @!\ +local_realclean:: @@\ + $(RM) base.c @!\ + + +/* + * ComplexYaccTarget: + * Declare a yacc base.y file to be used in the building of the + * specified target program. The source file must be given without + * its final .y extension. The name of the .c and .o will be + * derived from the source file basename provided. + * The difference with SimpleYaccTarget is the identifying process + * where all the 'yy' are replaced by the specified prefix. + */ +#define ComplexYaccTarget(program,base,prefix) @!\ +++SOURCES base.y @!\ +++OBJECTS base.o @!\ +program: base.c @!\ + @!\ +base.c: base.y @@\ + $(YACC) $(JYFLAGS) base.y @@\ + $(SED) -e 's/yy\(.\)/prefix\1/g' < y.tab.c > base.c @@\ + $(SED) -e 's/yy\(.\)/prefix\1/g' < y.tab.h > base.h @@\ + $(RM) y.tab.c y.tab.h @!\ + @!\ +local_realclean:: @@\ + $(RM) base.c @!\ + + +/* + * SimpleYaccInclude: + * Declare that program will need an include file produced by + * the output of yacc on base.y, which typically produces a file + * named y.tab.h, which will be renamed as base.h. + * The only problem is that the dependencies towards base.h have + * to be manually given in the Jmakefile. + */ +#define SimpleYaccInclude(base) @!\ +base.h: base.c @@\ + @if test -f y.tab.h; then \ @@\ + echo " $(MV) y.tab.h $@"; \ @@\ + $(MV) y.tab.h $@; \ @@\ + fi @!\ + @!\ +local_realclean:: @@\ + $(RM) base.h + +/* + * ComplexYaccInclude: + * Declare that program will need an include file produced by + * the output of yacc on base.y, which typically produces a file + * named y.tab.h, which will be renamed as base.h. + * The difference with SimpleYaccInclude is the identifying process + * of the y.tab.h file where all 'yy' are renamed to prefix. + * The only problem is that the dependencies towards base.h have + * to be manually given in the Jmakefile. + */ +#define ComplexYaccInclude(base,prefix) @!\ +base.h: base.c @@\ + @if test -f y.tab.h; then \ @@\ + echo " $(SED) -e 's/yy\(.\)/prefix\1/g' < y.tab.h > base.h"; \ @@\ + $(SED) -e 's/yy\(.\)/prefix\1/g' < y.tab.h > base.h; \ @@\ + echo " $(RM) y.tab.h"; \ @@\ + $(RM) y.tab.h; \ @@\ + elif test -f base.h; then \ @@\ + echo " $(CP) base.h base.ht"; \ @@\ + $(CP) base.h base.ht; \ @@\ + echo " $(SED) -e 's/yy\(.\)/prefix\1/g' < base.ht > base.h"; \ @@\ + $(SED) -e 's/yy\(.\)/prefix\1/g' < base.ht > base.h; \ @@\ + echo " $(RM) base.ht"; \ @@\ + $(RM) base.ht; \ @@\ + fi @!\ + @!\ +local_realclean:: @@\ + $(RM) base.h + + +/* + * NormalYaccTarget: + * Declare a yacc base.y file which should produce a base.c and + * base.h file as derived from the output of yacc, to be used by + * the specified program. + */ +#define NormalYaccTarget(program,base) @!\ +SimpleYaccTarget(program,base) @!\ +SimpleYaccInclude(base) + + +/* + * IdentifiedYaccTarget: + * Declare a yacc base.y file which should produce a base.c and + * base.h file as derived from the output of yacc, to be used by + * the specified program. The specified prefix is used to remplace + * all the 'yy' in the generated file, for use when more than a + * single parser is needed in one executable. + */ +#define IdentifiedYaccTarget(program,base,prefix) @!\ +ComplexYaccTarget(program,base,prefix) @!\ +ComplexYaccInclude(base,prefix) + + +/* + * SimpleLexTarget: + * This declares a lex base.l file which is to be ran through + * lex to produce a base.c file. + */ +#define SimpleLexTarget(program,base) @!\ +++SOURCES base.l @!\ +++OBJECTS base.o @!\ +|once _LexRule_ @!\ +|rule:.l.c: @!\ +|rule: $(LEX) $(JLFLAGS) $< @!\ +|rule: $(MV) lex.yy.c $@ @!\ +|rule: @!\ +-once @!\ +AddSuffix(.l) @!\ +program: base.c @!\ + @!\ +local_realclean:: @@\ + $(RM) base.c @!\ + + +/* + * IdentifiedLexTarget: + * This declares a lex base.l file which is to be ran through + * lex to produce a base.c file. The prefix is used to replace + * the 'yy', so that the lexical analyzer may be identified. + */ +#define IdentifiedLexTarget(program,base,prefix) @!\ +++SOURCES base.l @!\ +++OBJECTS base.o @!\ +program: base.c @!\ + @!\ +base.c: base.l @@\ + $(LEX) $(JLFLAGS) base.l @@\ + $(SED) -e 's/yy\(.\)/prefix\1/g' < lex.yy.c > base.c @@\ + $(RM) lex.yy.c @!\ + @!\ +local_realclean:: @@\ + $(RM) base.c @!\ + + +/* + * NormalLexDependTarget: + * Declare that program will need an include file produced by + * the output of lex on base.l, which typically produces a file + * named lex.yy.c which will be renamed as base.c. Besides, the + * lexical analyzer needs the file parser.h produced by running + * parser.y through yacc and renaming y.tab.h as parser.h. + */ +#define NormalLexDependTarget(program,base,parser) @!\ +base.o: parser.h @!\ + @!\ +SimpleLexTarget(program,base) + + +/* + * IdentifiedLexDependTarget: + * Declare that program will need an include file produced by + * the output of lex on base.l, which typically produces a file + * named lex.yy.c which will be renamed as base.c. Besides, the + * lexical analyzer needs the file parser.h produced by running + * parser.y through yacc and renaming y.tab.h as parser.h. + * The lexical analyzer is identified with the supplied prefix, + * which replaces the regular 'yy' prefix in the symbol names. + */ +#define IdentifiedLexDependTarget(program,base,parser,prefix) @!\ +base.o: parser.h @!\ + @!\ +IdentifiedLexTarget(program,base,prefix) + + +/* + * NormalParserTarget: + * Specify that program is using the lex/yacc combination to + * produce a parser. The lexic and parser parameters are the + * base name of the .l and .y file, respectively. + */ +#define NormalParserTarget(program,lexic,parser) @!\ +NormalLexDependTarget(program,lexic,parser) @!\ +NormalYaccTarget(program,parser) + + +/* + * IdentifiedParserTarget: + * Specify that program is using the lex/yacc combination to + * produce a parser. The lexic and parser parameters are the + * base name of the .l and .y file, respectively. The parser + * produced is identified via its prefix, which replaces all + * the normally supplied 'yy' prefix, hence making it possible + * to have multiple parsers in a single executable. + */ +#define IdentifiedParserTarget(program,lexic,parser,prefix) @!\ +IdentifiedLexDependTarget(program,lexic,parser,prefix) @!\ +IdentifiedYaccTarget(program,parser,prefix) + + diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl new file mode 100644 index 0000000..052ad5e --- /dev/null +++ b/jmake/files/Jmake.tmpl @@ -0,0 +1,253 @@ +/* + * Generic jmake template + * + * $Id: Jmake.tmpl,v 3.0.1.3 1997/02/28 14:56:16 ram Exp ram $ + * + * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi + * + * You may redistribute only under the terms of the Artistic Licence, + * as specified in the README file that comes with the distribution. + * You may reuse parts of this distribution only within the terms of + * that same Artistic Licence; a copy of which may be found at the root + * of the source tree for dist 4.0. + * + * $Log: Jmake.tmpl,v $ + * Revision 3.0.1.3 1997/02/28 14:56:16 ram + * patch61: lex path can now be configured + * + * Revision 3.0.1.2 1995/01/11 14:50:21 ram + * patch45: now pre-computes INSTALL and INSTALLDIR variables + * + * Revision 3.0.1.1 1993/08/20 07:36:36 ram + * patch3: config.sh searching was not aborting properly + * + * Revision 3.0 1993/08/18 12:04:16 ram + * Baseline for dist 3.0 netwide release. + * + */ + +: Makefile.SH generated from Jmake.tmpl and Jmakefile +: $Id: Jmake.tmpl,v 3.0.1.3 1997/02/28 14:56:16 ram Exp ram $ + +/************************************************************************* + * * + * DO NOT MODIFY BELOW THIS LINE * + * * + *************************************************************************/ + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/#*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +|expand cur!CURDIR! +CURRENT=!cur:^\./= +-expand +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" +/* + * Variable pre-computation. + */ +?INSTALL:INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +?INSTALLDIR:INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` +/* + * Makefile generation. + */ +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +#include + +%MKDEP:|skip /* Skip if no depend target */ +;######################################################################## +;# Force 'make depend' to be performed first -- do not edit + +.FORCE_DEPEND:: + +all:: .FORCE_DEPEND + +-skip /* Depend target */ +;######################################################################## +;# Start of Jmakefile +#include + +;######################################################################## +;# Common rules for all Makefiles -- do not edit +/* + * These need to be here so that rules in Jmakefile occur first; the blank + * all is to make sure that an empty Jmakefile doesn't default to make clean. + */ +emptyrule:: + +CleanTarget() +InstallTarget() + +/* + * The installation of manual pages is optional. When they say "none" in + * Configure, then they don't want any manual page and $installmansrc will + * be empty. + * + * To avoid protecting all the jmake rules for an empty destination, we use + * this clever hack: there is an "install.man-no" and an "install.man-yes" + * target defined, where the first does nothing and the second triggers + * the local install. The same goes for deinstall. + * + * If the `MANSRC' symbol is not wanted, then there is no manual page + * and we can force the -no version of the targets. + */ +%MANSRC:|skip /* Skip if no manual targets */ +!NO!SUBS! +case "$installmansrc" in +'') man=no;; +*) man=yes;; +esac +$spitshell >>Makefile <>Makefile <<'!NO!SUBS!' +-skip +?MANSRC:|skip /* Skip if it has manual targets */ +maybe_install.man: install.man-no +maybe_deinstall.man: deinstall.man-no +-skip + +MakefileTarget() +TagsTarget() + +%SUBDIRS:|skip /* Skip if no sub-directories */ +;######################################################################## +;# Rules for building in sub-directories -- do not edit + +CommonSubdirsRule($(SUBDIRS)) +InstallSubdirs() +InstallManSubdirs() +CleanSubdirs() +TagSubdirs($(SUBDIRS)) +MakefileSubdirs() +MakeSubdirs() + +/* + * Empty rules in case they don't define anything to be installed + * in this directory. + */ +local_install:: +local_deinstall:: +local_install.man:: +local_deinstall.man:: + +-skip /* Sub-directories */ +?SUBDIRS:|skip /* Skip if sub-directories */ +;######################################################################## +;# Empty rules for directories with no sub-directories -- do not edit + +local_install:: + @echo "install in $(CURRENT) done." + +local_deinstall:: + @echo "deinstall in $(CURRENT) done." + +local_install.man:: + @echo "install.man in $(CURRENT) done." + +local_deinstall.man:: + @echo "deinstall.man in $(CURRENT) done." + +/* + * Action for 'Makefiles' would be required, if a .SUFFIXES: .SH rule + * were added, because in that case, a "/bin/sh Makefiles.SH" would + * be issued and raise an error. + */ +Makefiles:: + +Makefiles.SH:: + +-skip /* No sub-directories */ +%MKDEP:|skip /* Skip if no depend target */ +;######################################################################## +;# Dependencies generated by make depend +;# DO NOT DELETE THIS LINE -- make depend relies on it + +;# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: +?TOP: @echo "You haven't run a 'make depend' yet!"; exit 1 +%TOP: @echo "You must run 'make depend' in $(TOP) first."; exit 1 +-skip /* Depend target */ +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/jmake/fixcpp.SH b/jmake/fixcpp.SH new file mode 100755 index 0000000..24dd274 --- /dev/null +++ b/jmake/fixcpp.SH @@ -0,0 +1,183 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting jmake/fixcpp (with variable substitutions)" +$spitshell >fixcpp <>fixcpp <<'!NO!SUBS!' + +while ($ARGV[0] =~ /^-/) { + $_ = shift; + last if /--/; + $cpp_opt .= "$_ "; + next unless s/-I//; + push(@lookpath, $_); +} + +($file) = @ARGV; +$counter = 0; # Counter for temporary files + +$SIG{'INT'} = 'PLUMBER'; # Install cleaner in case of an interrupt... + +$result = &process($file); # Process file, result in a temporary +&cpp($result); # Pass resulting file with escaped \ to cpp +unlink $result; +exit 0; + +# Cleanup any temporary files... +sub PLUMBER { + warn "Could not cleanup all temporaries.\n" if @tmps != unlink(@tmps); + exit 1; +} + +# Compute a suitable temporary file name +sub mktmp { + $counter++; + local($tmp) = "/tmp/jmk.$counter.$$"; + push(@tmps, $tmp); # Keep track of them for &PLUMBER... + $tmp; +} + +# Process a given file, returning the name of the temporary file into which +# the result is left over. +# This routine is recursively called to process nested include directives. +sub process { + local($file) = @_; + local(*FILE, *TMP); + open(FILE, $file) || die "Can't read $file: $!\n"; + local($tmpfile) = &mktmp; + open(TMP, ">$tmpfile") || die "Can't create $tmpfile: $!\n"; + local($here, $include); + local($_); + while () { + if (s/^#\s*include\s*//) { # Ah, we found a #include something... + chop; + if (/"(\S+)"/) { + ($include, $here) = ($1, 1); + } elsif (/<(\S+)\>/) { + ($include, $here) = ($1, 0); + } else { + warn "Ignoring unkown include directive $_.\n"; + next; + } + local($incfile) = &lookup($include, $here); + unless (defined $incfile) { + warn "Can't locate include file $include.\n"; + next; + } + $include = &process($incfile); # Recursively process this file + &append($include, 'TMP'); # Append result to current tmp file + unlink $include; + } else { + &escape; + print TMP; + } + } + close FILE; + close TMP; + $tmpfile; # Return name of file where results has been left over +} + +# Perform necessary escaping work on current line. +sub escape { + # Don't escape trailing backslashes in macro definition or cpp + # won't see them as macro continuation any longer, and also within + # macro definitions, all those @@ or @! continuations... + s/\\$/\\ \015/ unless /\@[!@]\\$/ || /^#define/; +} + +# Append file to given (opened) file descriptor +sub append { + local($file, $fd) = @_; + local(*FILE); + open(FILE, $file) || die "Can't re-open $file: $!\n"; + local($_); + while () { + &escape; + print $fd $_; + } + close FILE; +} + +# Lookup file, returning its located name or undef if not found. +sub lookup { + local($file, $here) = @_; + unless ($here) { + foreach $dir (@lookpath) { + if (-r "$dir/$file") { # Use -r instead of -f for symlinks + $file = "$dir/$file"; + last; + } + } + } + return undef unless -r $file; + $file; +} + +# This is the final cpp processing. The output from cpp is filtered to un-escape +# all the trailing backslashes. +sub cpp { + local($file) = @_; + open(CPP, "$cpp $cpp_opt $file |") || die "Can't fork: $!\n"; + while () { + s/\\ \015$/\\/; # Un-escape trailing \ + print STDOUT; + } + close CPP; +} + +!NO!SUBS! +chmod 755 fixcpp +$eunicefix fixcpp diff --git a/jmake/jmake.SH b/jmake/jmake.SH new file mode 100755 index 0000000..3f676b2 --- /dev/null +++ b/jmake/jmake.SH @@ -0,0 +1,526 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting jmake/jmake (with variable substitutions)" +$spitshell >jmake <>jmake <<'!NO!SUBS!' + +($me = $0) =~ s|.*/(.*)|$1|; +$dir = &tilda_expand($dir); # ~name expansion +$file = $dir . '/Jmake.tmpl'; + +$cpp_opt = "-I. "; # For Jmakefile, which is local +while ($ARGV[0] =~ /^-/) { + $_ = shift; + last if /--/; + $cpp_opt .= "$_ "; +} +$cpp_opt .= "-I$dir"; + +# Pass 0 is looking at the template for "?CP:CP =" lines that are to be +# emitted if the CP variable is needed. Later on, when we see $(CP) being +# used, we'll be able to set the $symbol{CP} entry to 1 to have the CP +# variable initialized by the template. + +open(TMPL, $file) || die "$me: can't open $file: $!\n"; +while () { + next unless /^\?([\w_]+):\1\s+=/; + $wanted{$1}++; +} +close TMPL; + +# Thank you HP-UX for having a cpp that blindly strips trailing backslashes +# in the text. Run through cpp by using the fixcpp script... + +open(CPP, "$dir/fixcpp $cpp_opt $file |"); +while () { + # Record defined symbols in Jmakefile. We won't catch symbols + # in conditional commands, but that's ok, I hope. + if ($in_symbol) { + $val = $_; + $in_symbol = 0 if !($val =~ s/\\\s*$//); # Last line + if ($val = /^\|expand/) { # Found an expand command + $in_symbol = 0; # Stop gathering value + $val .= "void::x"; # Stop any incomplete escape sequence + } + chop($val); + $Makesym{$current_symbol} .= $val; + } elsif (/^\s*(\w+)\s*=(.*)/ && !$in_symbol) { + # Found a makefile's macro declaration + $val = $2; + $current_symbol = $1; + if ($val =~ s/\\\s*$//) { # Remove final '\' + $in_symbol = 1; # This is a continuation line + } + $Makesym{$current_symbol} = $val; + push(@Order, $current_symbol); # Keep track of order + } + # Protect RCS keyword Id or Header from normal substitution + s/\$(Id|Header|Log)/\$X-$1/; + # Restore possibly escaped C comments + s|/#\*|/*|g; + s|\*#/|*/|g; + # Remove all ^^^ (null space character) up to next non-space character + s|\^\^\^\s*||g; + # Remove all ^^ (null space character) + s|\^\^||g; + # Restore escaped ^^ and ^^^ sequences + s|\^\\\^\\\^|^^^|g; + s|\^\\\^|^^|g; + next if /^#\s+\d+/; # Skip cpp commments + + s/^;#/#/; + s/@#\s?/\n/g; # Kept for backward compatibility + s/@!\s?/\n/g; + s/@@\s?/\n\t/g; + + $* = 1; + # A '\r' is added to all lines, in order to let 'split' keep them + # As lines ending with '\' won't fit in the next regular + # expression (why ?), we have to treat that special case separately + s/\n$/\r\n/g; + s/\\\s*$/\\\r/g; # Remove spaces after final '\' and add '\r' + $* = 0; + @macro = split(/\n/); + for ($i = 0; $i <= $#macro; $i++) { + chop($_ = $macro[$i]); # Remove final '\r' + s/\s+$//g; # Remove possible useless spaces + if (/^TOP\s*=\s*(\S+)/) { # Get the top from generated file + $top = $1; + } + find_wanted($_); # Look for known $(VAR) usage + if (s/^\s*>//) { # '>' means "symbol wanted" + warn "$me: the '>$_' construct is deprecated for known symbols\n" + if $wanted{$_} && !$warned_wanted_symbol_deprecated++; + $symbol{$_} = 1; + } elsif (s/^\s*\+//) { # '+' means "initialization section" + if (s/^\+(\w+)//) { # '++' means add to variable list + $added{$1} .= $_; + } else { # A single '+' means "add as is". + push(@init, $_); + } + } elsif (s/^\|//) { # Command for us + if (/suffix\s+(\S+)/) { # Add suffix + push(@suffix, $1) unless $seen{$1}; + $seen{$1} = 1; + } elsif (s/^rule://) { # Add building rule + s/^\s(\s*\S+)/\t$1/; # Make sure leading tab is there + push(@rule, $_); + } elsif (/^skip/) { # Unconditional skip... funny! + push(@makefile, "|$_"); # Skip handled in pass 2 + } elsif (/^expand/) { + push(@makefile, "|$_"); # Expand handled in pass 2 + } elsif (/^once\s+(.*)/) { # Once handled in pass 1 + if ($Once{$1}++) { # Symbol already seen -- skip + for (; $i <= $#macro; $i++) { + last if $macro[$i] =~/^-once/; + } + warn("$me: -once not found for $1") + unless $macro[$i] =~/^-once/; + } + } elsif (/^shell/) { # Escaping to shell + push(@makefile, "|$_"); # will be handled in pass 2 + } elsif (/^case/) { # Conditional generation + push(@makefile, "|$_"); # will be handled in pass 2 + } elsif (/^subst/) { # Section with var substitution + push(@makefile, "|$_"); # will be handled in pass 2 + } else { + print "$me: Warning: unknown command $_\n"; + } + } else { + next if /^-once/; # Control statement removed + push(@makefile, $_); + } + } +} +close CPP; + +@key = keys(%added); +$last_was_blank = 1; # To avoid blank line at the top of the file +$symbol{'INIT'} = 1 if ($#init >= 0 || $#key >=0); # Initializations +$symbol{'SUFFIX'} = 1 if ($#suffix >= 0 || $#rule >=0); # Rules or suffixes +$symbol{'TOP'} = 1 if $top eq '.'; # If imake invoked for the top + +$shellmode = 0; # Set to true within "shell" section +$casemode = 0; # Counts nesting levels within "case" section +$substmode = 0; # True when within section with variable substitution + +$SPIT_START = "\$spitshell >>Makefile <<'!NO!SUBS!'\n"; +$SPIT_END = "!NO!SUBS!\n"; +$GROK_START = "\$spitshell >>Makefile <Makefile.SH"); +# We have to use for instead of foreach to handle 'skip' easily +line: for ($i = 0; $i <= $#makefile; $i++) { + $_ = $makefile[$i]; + next if /^-skip|-expand/; # They might have made a mistake + + # Strip consecutive blank lines in generated file + + if (/^\s*$/) { + next if ($last_was_blank); + $last_was_blank = 1; + } else { + $last_was_blank = 0; + } + + # In shell mode, we're transparent, untill we reach a "-shell" + # We don't call print_makefile() as we don't want to record + # those non-makefile lines in the @Generated array. + + if ($shellmode) { + if (/^-shell/) { # Ending shell mode, back to Makefile + print MAKEFILE $substmode ? $GROK_START : $SPIT_START; + $shellmode = 0; + } elsif (/^\|shell/) { + die "$me: can't nest 'shell' sections.\n"; + } else { + print MAKEFILE "$_\n"; + } + next; + } elsif (/^\|shell/) { + print MAKEFILE $substmode ? $GROK_END : $SPIT_END; + $shellmode = 1; # Next lines emitted verbatim as shell + next; + } + + # In subst mode, the section until "-subst" is emitted regularily, + # excepted that it will be in a grok section, so its $var will be + # substituted by the shell. + + if ($substmode) { + if (/^-subst/) { # Ending subst mode, back to regular + print MAKEFILE $GROK_END; + print MAKEFILE $SPIT_START; + $substmode = 0; + next; + } elsif (/^\|subst/) { + die "$me: can't nest 'subst' sections.\n"; + } + # Continue with line + } elsif (/^\|subst/) { + print MAKEFILE $SPIT_END; # End spit section in Makefile.SH + print MAKEFILE $GROK_START; + $substmode = 1; # Next lines subject to $ interpretation + next; + } + + # In a "case" section, the Makefile will be conditionally generated + # based on the value of the supplied variable, as evaluated by the shell. + # We can nest "case" sections without problems. + + if (/^-case/) { # Ending current case section + if ($casemode == 0) { + warn "$me: ignoring spurious '-case'\n"; + next; + } + print MAKEFILE $substmode ? $GROK_END : $SPIT_END; + my $indent = "\t" x ($casemode - 1); + print MAKEFILE "${indent}\t;;\n"; + print MAKEFILE "${indent}esac\n"; + print MAKEFILE "${indent}", $substmode ? $GROK_START : $SPIT_START; + $casemode--; + next; + } + + if (/^\|case/) { + my ($var, $value) = /^\|case\s+(\w+)\s+in\s+(.*)/; + die "$me: unparseable directive '$_'\n" if $var eq ''; + $casemode++; + print MAKEFILE $substmode ? $GROK_END : $SPIT_END; + my $indent = "\t" x ($casemode - 1); + print MAKEFILE "${indent}case \"\$$var\" in\n"; + print MAKEFILE "${indent}$value)\n"; + print MAKEFILE "${indent}\t", $substmode ? $GROK_START : $SPIT_START; + next; + } + + # Process regular line to be generated in Makefile.SH + + s//[jmake $version PL$patchlevel]/; + + # Lines starting with ?SYMBOL: (resp. %SYMBOL:) are to be processed + # only if SYMBOL is defined (resp. undefined). + + # Apply in sequence + while (/^\s*\?|\s*%/) { + if (s/^\s*\?(\w+)://) { # Wanted symbol ? + next line unless $symbol{$1}; + } elsif (s/^\s*%(\w+)://) { # Unwanted symbol ? + next line if $symbol{$1}; + } else { + print "$me: Warning: missing ':' in $_\n"; + last; + } + } + + # We wish to make sure there is a leading tab if the line starts with + # a space to prevent problems later on. However, variable definitions + # might want to be aligned on the '=' (imake style). Not all make + # may be able to cope with those though, so they are left justified + # again. + + s/^\s/\t/ unless /^\s+\w+\s+=/; # Make sure leading tab is there + s/^\s+(\w+\s+=)/$1/; # Left justify variable definition + s/^;#/#/; # Comments in Jmakefile + + if (s/^\|//) { # Command for us + if (/^skip/) { # Skip until -skip + for (; $i <= $#makefile; $i++) { + last if $makefile[$i] =~ /^-skip/; + } + } elsif (s/^expand//) { + &init_expand($_); # Initializes data structures + $i++; # Skip expand line + undef @Expand; # Storage for expanded lines + $pattern = ''; # Assume no pattern + for (; $i <= $#makefile; $i++) { + $_ = $makefile[$i]; + if (s/^-expand//) { # Reached end of expansion + if (s/^\s*(.*)/$1/) { # Expand followed by a pattern + $pattern = $_; # Get pattern to be removed + } + last; + } + s/^\s/\t/; # Make sure leading tab is there + push(@Expand, $_); # Line to be expanded + } + &expand($pattern); # Expand all lines in buffer + } else { + die "$me: unknown command $_\n"; + } + } elsif (/^INIT/) { # Initialization section + # All the initializations are put in the variable substitution + # section of the Makefile.SH. Therefore, we have to protect all + # the '$' signs that are not followed by an alphanumeric character. + foreach (@init) { + # Dumps core sometimes with perl 4.0 PL10 + # &protect_dollars(*_); + $_ = &protect_dollars($_); + &print_makefile($_); + } + foreach (@key) { # @key set earlier to keys(%added) + $_ .= " = " . $added{$_}; + # Dumps core sometimes with perl 4.0 PL10 + # &protect_dollars(*_); + $_ = &protect_dollars($_); + &print_makefile($_); + } + } elsif (/^SUFFIX/) { # Suffixes/Rules section + # Rules and suffixes are put in the variable substitution + # section of the Makefile.SH. Therefore, we have to protect all + # the '$' signs that are not followed by an alphanumeric character. + if ($#suffix >= 0) { + print MAKEFILE ".SUFFIXES:"; + foreach (@suffix) { + # Dumps core sometimes with perl 4.0 PL10 + # &protect_dollars(*_); + $_ = &protect_dollars($_); + print MAKEFILE " $_"; + } + print MAKEFILE "\n\n"; + } + foreach (@rule) { + # Dumps core sometimes with perl 4.0 PL10 + # &protect_dollars(*_); + $_ = &protect_dollars($_); + print MAKEFILE "$_\n"; + } + } else { + &print_makefile($_); + } +} +close MAKEFILE; + +sub protect_dollars { + # Dumps core sometimes with perl 4.0 PL10 + # local(*_) = shift(@_); + s/\\\$/\\=/g; # Protect already escaped '$' + s/(\$\W)/\\$1/g; # Escape unprotected '$' + s/\\=/\\\$/g; # Restore escaped '$' + $_; # Because perl dumps core... :-( +} + +# Initializes data structures for expansion. If we detect Makefile +# macro in the 'expand' line (the argument), then we write a small +# makefile that will do the substitution for us -- I'm lazy today :-) +sub init_expand { + local($_) = shift(@_); + undef %Vars; # Reset array of variables + $Vars_len = 0; # Number of "symbols" in first expanded + if (/\$\(\w+\)/) { # If at least one macro + local($make) = "/tmp/mkjm$$"; + open(MAKE, ">$make") || die "$me: can't create $make: $!\n"; + &gen_variables(); # Generates already computed variables + foreach $var (@Order) { # Print each in order we found them + print MAKE "$var = $Makesym{$var}\n" if !$Gvars{$var}; + } + # We prepend OUTPUT: in front of the line that interests us, because + # some makes can print extra information, especially GNU make with + # its entering/leaving blurb when invoked from another makefile. + print MAKE "all:\n\t\@echo 'OUTPUT: $_'\n"; + close MAKE; + chop($_ = `make -f $make all | grep ^OUTPUT:`); + unlink($make); + } + s/^OUTPUT: //; + while (s/^\s*(\w+)!([^!]*)!//) { + $Vars{$1} = $2; + # Record only length for _first_ expanded symbol + $Vars_len = split(/\s\s*/, $2) unless $Vars_len; + } +} + +# Expand lines in the @Expand array. The argument is a pattern which is to +# be removed from the last chunk of expanded lines. +# For each symbol s, !s is replaced by the next item, and !s:p=q does the +# same after having replaced the pattern 'p' by pattern 'q' in the item. +# Spaces are NOT allowed in 'p' or 'q'. Substitution is done once (no /g). +sub expand { + local($pattern) = shift; # To-be-removed pattern for last chunk + local($_); + local($sub); + local($i); + local(@expands); + for ($i = 0; $i < $Vars_len; $i++) { + foreach $line (@Expand) { + $_ = $line; # Don't modify elements in array + foreach $sym (keys %Vars) { + @expands = split(/\s\s*/, $Vars{$sym}); + $sub = $expands[$i]; + $sub =~ s/\/\///g; # // is a void value + while (s/!${sym}:([^\s]*)=([^\s]*)/,x##x,/) { + # Replacing item is altered by some pattern + local($p) = $1; + local($q) = $2; + local($subq) = $sub; + eval "\$subq =~ s=${p}=${q}="; + s/,x##x,/${subq}/; + } + s/!${sym}/${sub}/g; + } + # Protect substitution in an 'eval' in case of error + eval "s/${pattern}\$//" if $pattern && $i == ($Vars_len - 1); + &print_makefile($_); + } + } +} + +# Prints its argument in MAKEFILE and records it also in Generated +sub print_makefile { + local($_) = shift(@_); # Line to be printed + print MAKEFILE "$_\n"; + push(@Generated, "$_\n"); +} + +# Generates in MAKE file all the generated variable we have so far for +# final Makefile. This is mainly intended to allow expansion of variables +# which are already defined with an expand. +sub gen_variables { + undef %Gvars; # Reset already generated variables + local ($in_symbol) = 0; # True when in variable (Makefile's macro) + foreach (@Generated) { + if ($in_symbol) { + if (/^\s*(\w+)\s*=(.*)/) { # Missed the end of previous macro + $in_symbol = 0; + $Gvars{$1} = 1; # Definition of variable seen + $in_symbol = 1 if (/\\\s*$/); # There is a final '\' + print MAKE "void::\n"; # Cut incomplete esc sequence + } else { + $in_symbol = 0 if !(/\\\s*$/); # Last line + } + print MAKE; + } elsif (/^\s*(\w+)\s*=(.*)/ && !$in_symbol) { + # Found a makefile's macro declaration + $Gvars{$1} = 1; # Definition of variable seen + $in_symbol = 1 if (/\\\s*$/); # There is a final '\' + print MAKE; + } + } + print MAKE "void::\n"; # Cut incomplete escape sequence +} + +# Parse line to extract all $(VAR) usage and trigger the symbol if VAR +# is among the wanted set, as if they had manually said ">VAR" like in +# the old days. +sub find_wanted { + my ($l) = @_; + while ($l =~ s/\$\(([\w_]+)\)//) { + $symbol{$1}++ if $wanted{$1}; + } +} + +!NO!SUBS! +$grep -v '^;#' ../pl/tilde.pl >>jmake +chmod 755 jmake +$eunicefix jmake diff --git a/jmake/jmake.man b/jmake/jmake.man new file mode 100644 index 0000000..2b0997f --- /dev/null +++ b/jmake/jmake.man @@ -0,0 +1,491 @@ +''' $Id: jmake.man,v 3.0.1.3 2004/08/22 09:01:55 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: jmake.man,v $ +''' Revision 3.0.1.3 2004/08/22 09:01:55 ram +''' patch71: renamed |test as |case as the construct has its syntax +''' patch71: added |subst section to allow variable substitutions +''' +''' Revision 3.0.1.2 2004/08/21 23:19:52 ram +''' patch71: added '|shell' section to emit verbatim code in Makefile.SH +''' patch71: new '|test' to conditionally generate Makefile sections +''' +''' Revision 3.0.1.1 1995/05/12 11:57:58 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0 1993/08/18 12:04:18 ram +''' Baseline for dist 3.0 netwide release. +''' +.TH JMAKE 1 ram +.SH NAME +jmake \- a generic makefile builder +.SH SYNOPSIS +.B jmake +[ +.I cpp options +] +.SH DESCRIPTION +.I Jmake +builds a makefile out of a rather high level description held in a +.I Jmakefile +file. The generated file is a +.I Makefile.SH +rather than a simple makefile, which means it is ready to be used in +conjonction with +.I metaconfig. +In particular, parameters such as "where to install executables" will +be automatically determined by +.I Configure +and only the needed parameters will be taken into account. +.PP +To use +.I jmake +you have to write a +.I Jmakefile +first, which describes the way things are to be built. Your +.I Jmakefile +will be included inside a generic template through the C pre-processor. +This means you may use the usual C /**/ comments, but not the shell # comments. +The C comments will not appear in the generated +.I Makefile.SH +but lines starting with ;# will finally appear as shell comments. If you +have to write the string /* in the generated +.I Makefile.SH +then you have to escape it (otherwise +.I jmake +will think of it as the start of a C comment). Simply put a # in front +of the *, as in /#*. +.PP +You have a set of macros at your disposal, and all these macros are +listed in the Index file, along with the piece of code they will +expand to. Usually, a +.I Jmakefile +is fairly small and thus easier to maintain than a huge +.I Makefile. +Some internal powerful commands allow you to write +portable makefiles easily, without having to spend many efforts, because +someone else already did the job for you :-). +.PP +When you want to generate your makefile, you usually do not run +.I jmake +but use the +.I jmkmf +script which is a wrapper and will invoke +.I jmake +with the correct options. +.PP +All the knowledge of +.I jmake +is held in two files: the template +.I Jmake.tmpl +and the macro definition file +.I Jmake.rules. +The first file includes the second, along with the +.I Jmakefile. +It is sometimes necessary to know how things works to be able to correctly +use all the features provided. For instance, you may have to write your +own rules for a specific project. Although you cannot overwrite the +predefined rules, you can extent the +.I Jmake.rules +file or simply add your macros in your +.I Jmakefile. +You may also use +.I #include +statements when you want to share these macros and do not want to duplicate +the code. +.PP +The syntax in Jmake.rules is not elegant at all, but: +.sp +.PD 0 +.IP - +It is easy to parse (like sendmail.cf or troff files). +.IP - +The rules are not supposed to change very often. +.IP - +It is simple enough to be mastered in five minutes. :-) +.sp +Here is a small description: +.sp +.IP 1) +To deal with various \fIcpp\fR implementations: +.sp +.RS +.IP \(bu +Final @!\\ means: end of line, next line starts at the left margin. +.IP \(bu +Final @@\\ means: end of line, next line is to be indented by one tab. +.sp +.PP +There should always be one of @!\\ or @@\\ at the end of each line. +The only exception is for macros that are to be used as part of a +rule body (e.g. \fIRemoveTargetProgram\fR). In that case, the first +line (which holds the \fI#define\fR) should end with a single backslash. +.RE +.sp +.IP 2) +Symbol definitions: +.sp +.RS +.IP \(bu +>SYMBOL: defines the symbol. +.IP \(bu +?SYMBOL:: keeps iff SYMBOL is defined. +.IP \(bu +%SYMBOL:: keeps iff SYMBOL is not defined. +.sp +.PP +The ?SYM can be nested (logical AND), as in: +.sp +.in +5 +?SYMBOL:%TOKEN:text +.in -5 +.sp +which will keep text if SYMBOL is defined and TOKEN undefined. +To implement a logical OR, see below. +.RE +.sp +.IP 3) +Commands: +.sp +.RS +Commands can be passed to \fIjmake\fR. They start with a leading '|'. +Available commands are: +.sp +.IP \(bu +|suffix : adds to the .SUFFIXES: list in the makefile. +.sp +.IP \(bu +|rule:: adds to the building rule section. +.sp +.IP \(bu +|rule: : same as before, with a leading tab. +.sp +.IP \(bu +|skip: skips text until a line starting with '-skip' is found. +.sp +.IP \(bu +|subst: begins section where lines will be subject to variable substitution, +until '-subst' is found. This means that when the Makefile.SH is run, all +instances of $var within the \fIsubst\fR section will be substituted by the +shell. +.sp +.IP \(bu +|shell: emits section until matching '-shell' as-is in the generated +Makefile.SH. This can be useful to prepare \fI|case\fR sections. It is +not allowed to nest \fIshell\fR sections. +.sp +.IP \(bu +|case: this command must be followed by a shell variable name (without +its leading '$' sign) and a case-style pattern, for instance the string +"var in f*". It will generate the corresponding "case" test in the +Makefile.SH on the "$var" value and only if this test is true will the +section until the matching '-case' be generated in the Makefile when +Makefile.SH is run. It is possible to nest \fIcase\fR sections freely. +.sp +.IP \(bu +|expand : expand lines until '-expand' with . A +complete example is shown below. +.sp +.IP \(bu +|once : text up to '-once' appears only the first time. +.sp +.PP +The '|' commands cannot be nested, unless otherwise noted. +In particular, due to the simple +implementation of \fI|skip\fR, it is impossible to put \fI|skip\fR inside +a skipped part. However, a \fI|once\fR section may have \fI|skip\fR sections. +It is allowed to nest \fI|case\fR sections at will. +.sp +.PP +Here is a way to implement a logical OR: +.sp +.in +5 +.nf +/* Implements SYMBOL or not TOKEN */ +?SYMBOL:text /* Keeps text if SYMBOL */ +%SYMBOL:|skip + %TOKEN:text /* Keeps text if not TOKEN */ +-skip +.fi +.in -5 +.sp +Actually, this is ugly, because the text has to appear twice. +Fortunately, I did not use it. :-) +.sp +But actually, as you have surely already guessed, the best way to +implement a logical OR is to use De Morgan's Law: +.sp +.in +5 +.nf +not (p or q) <=> not p and not q + +/* Implements SYMBOL or not TOKEN (attempt #2) */ +%SYMBOL:?TOKEN:|skip +text /* If SYMBOL or not TOKEN */ +-skip +.sp +.in -5 +.fi +Who said they didn't care ? ;-) +.sp +.PP +Expansion is done with the \fIexpand\fR command. It has been provided to +avoid some cumbersome writings in makefiles when you have to repeat some +silly lines that only differ in file names, for instance. Let's look at +an example first: +.sp +.in +5 +.nf +|expand a!foo bar! b!yes no! +!a:: + echo !a, !b +-expand +.fi +.in -5 +.sp +.PP +Then two rules will be printed, and the values of (a,b) for the first +will be (foo, yes), for the second (bar, no). Substitution is controled +by the '!' character. If the word to be substituted is part of another +one, detach with the ^^ construct as in: !b^^c. It is possible to +use Makefile macros in the , and they will be expanded by +jmake. If this is not what you want, escape the first '$' sign (this is +a Makefile escape, i.e. you must double the '$', not precede it with a +backslash). A // stands for the null substitution value. +.PP +The ^^^ construct behaves like ^^, i.e. it is stripped out, but it also +removes any following white space after the ^^^. If you prepend something +to a macro argument, and that macro argument was written with spaces before +it, then this will let you concatenate something right before that argument's +final value. +.sp +.PP +Here is another example which shows how the macro Expand can be used. +It is defined in \fIJmake.rules\fR as: +.sp +.in +5 +.nf +#define Expand(rule, pattern) @!\\ +|expand pattern @!\\ +rule @!\\ +-expand +.sp +.in -5 +.fi +So we can write in the \fIJmakefile\fR: +.sp +.in +5 +.nf +|skip +A = foo bar +-skip + +#define Rule @!\\ +$(DIR)/!a^^.o: !a^^.o @@\\ + $(CC) -c !a^^.c @@\\ + $(MV) !a^^.o $(DIR) + +Expand(Rule, a!$(A)!) +.sp +.in -5 +.fi +which will generate in \fIMakefile.SH\fR: +.sp +.in +5 +.nf +$(DIR)/foo.o: foo.o + $(CC) -c foo.c + $(MV) foo.o $(DIR) + +$(DIR)/bar.o: bar.o + $(CC) -c bar.c + $(MV) bar.o $$(DIR) +.sp +.in -5 +.fi +.sp +.PP +The 'A' declaration has been surrounded by \fIskip\fR, so that it does +not appear in the generated Makefile.SH, but it will be taken into +account by \fIjmake\fR for the substitution in the pattern. +.sp +.PP +The number of expansions is determined by the number of possible +values for the \fBfirst\fR parameter. If other parameters have less +substitution values, they will get void ones. +.sp +.PP +It is possible to add a regular expression at the end of '-expand'. This +regular expression will be removed from the final set of expansion at the +end of each line. It is also possible to do substitutions in the expanded +item, by using the syntax (if 'f' is the expanded variable) +!f:\fI

\fR=\fI\fR +where \fI

\fR and \fI\fR are two regular expressions (without spaces). +The pattern \fI

\fR will be replaced by the pattern \fI\fR (only the first +occurrence will be replaced). +.sp +.PP +Finally, you may refer in the expanded section to variables whose value is +computed via another expansion, which makes it easy to define generic +\fIJmakefiles\fR. +.sp +Example: +.sp +.in +5 +.nf +SRC = foo.c bar.c +OBJ = \\ +|expand f!$(SRC)! + !f:\\.c=\\.o \\ +-expand \\\\ +INC = \\ +|expand f!$(OBJ)! + !f:\\.o=\\.h \\ +-expand \\\\ +.fi +.in -5 +.sp +which will generate in \fIMakefile.SH\fR: +.sp +.in +5 +.nf +SRC = foo.c bar.c +OBJ = \\ + foo.o \\ + bar.o +INC = \\ + foo.h \\ + bar.h +.in -5 +.fi +.sp +Do not forget to protect special characters in your regular expressions such +as backslash, point, etc... +.sp +.PP +The \fIonce\fR command is tagged with a name. The first time the name +appears, the once construct is ignored and the text up to '-once' will +be copied in the generated Makefile.SH. However, future occurences of +the same name will be ignored (\fIonce\fR will behave like \fIskip\fR). +.sp +Example: +.sp +.in +5 +.nf +|once this_is_a_name + +-once +.sp +.in -5 +.fi +.sp +.PP +The \fIshell\fR command can be used to generate a shell fragment +in the Makefile.SH. For instance, the following section in the Jmakefile: +.sp +.in +5 +.nf +|shell +case "$d_usegtk1" in +define) glib=1; gtk=1;; +esac +-shell +.sp +.in -5 +.fi +will cause the generation of the enclosed fragment in the Makefile.SH to +compute the values of the \fIglib\fR and \fIgtk\fR variables based on the +configuration variable \fId_usegtk1\fR set by running Configure. +.sp +.PP +In turn, this can be used in subsequent \fIcase\fR sections to activate +parts of the Makefile only when building for GTK1 using glib-1.x: +.sp +.in +5 +.nf +|case glib in 1 +display: + echo "Building for glib-1.x" +-case +.sp +.in -5 +.fi +This section will generate something like this in the Makefile.SH: +.sp +.in +5 +.nf +!NO!SUBS! +case "$glib" in +1) + $spitshell >>Makefile <<'!NO!SUBS!' +display: + echo "Building for glib-1.x" +!NO!SUBS! + ;; +esac +$spitshell >>Makefile <<'!NO!SUBS!' +.sp +.in -5 +.fi +And when running Makefile.SH, the "display" rule above will only appear +when building for glib-1.x. The form of the final \fIMakefile\fR can +therefore depend on the configuration options chosen when \fIConfigure\fR +was run. +.RE +.sp +.IP 4) +Initializations: +.sp +.RS +.IP \(bu ++: Puts the whole line in the initialization section. +.IP \(bu +++SYMBOL : Adds to the SYMBOL macro. +.RE +.sp +.IP 5) +User-defined variables: +.sp +The user may define CFLAGS, LDFLAGS or DPFLAGS as additional flags to be used +in C compilation, linking phase or depend target. It is thus possible to add +some extra flags such as -I or libraries for Makefiles in specific +sub-directories. +.sp +.PD +.SH AUTHOR +Raphael Manfredi +.SH FILES +.PD 0 +.TP 20 +Jmakefile +High level description of Makefile.SH +.TP +Jmake.rules +File holding the macro definitions +.TP +Jmake.tmpl +Template used to mould Makefile.SH +.PD +.SH BUGS +On systems whose +.I cpp +reduces multiple tabs and spaces to a single space, +.I jmake +attempts to put back any necessary tabs (which +.I make +expects in front of rules) but does not properly formats the +body of the rule itself. +.PP +There is a bootstraping problem when creating the first Makefile.SH, because +you cannot run it through a shell until there is a decent Configure +script, but you can't run \fImetaconfig\fR before there is a Makefile.SH +or some needed symbols will not be defined. +.SH "SEE ALSO" +jmkmf(1), metaconfig(1). diff --git a/jmake/jmkmf.SH b/jmake/jmkmf.SH new file mode 100755 index 0000000..64edf18 --- /dev/null +++ b/jmake/jmkmf.SH @@ -0,0 +1,106 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting jmake/jmkmf (with variable substitutions)" +$spitshell >jmkmf <>jmkmf <<'!NO!SUBS!' +# @(#) Generates a Makefile from a Jmakefile + +# $Id$ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $Log: jmkmf.SH,v $ +# Revision 3.0.1.2 2004/08/21 23:18:13 ram +# patch71: automatically figures the top dir and the current dir +# patch71: don't run Makefile.SH if the jmake call failed +# +# Revision 3.0.1.1 1993/08/19 06:42:14 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:04:19 ram +# Baseline for dist 3.0 netwide release. +# + +usage="usage: $0 [top_of_sources_pathname [current_directory]]" + +curdir= + +case $# in + 0) + if test -f .package; then topdir=.; + elif test -f ../.package; then topdir=..; + elif test -f ../../.package; then topdir=../..; + elif test -f ../../../.package; then topdir=../../..; + elif test -f ../../../../.package; then topdir=../../../..; + else + echo "$0: WARNING: can't determine top package directory" >&2 + fi + ;; + 1) topdir=$1 ;; + 2) topdir=$1 curdir=$2 ;; + *) echo "$usage" 1>&2; exit 1 ;; +esac + +case "$topdir" in + -*) echo "$usage" 1>&2; exit 1 ;; +esac + +case "$curdir" in +'') + here=`pwd` + top=`cd $topdir; pwd` + curdir=`perl -e \ + 'print substr($ARGV[0], length($ARGV[1])+1), "\n";' $here $top` + case "$curdir" in + '') curdir=.;; + esac + ;; +esac + +if test -f Jmakefile; then + : ok +else + echo "$0: no Jmakefile found in current directory" >&2 + exit 1 +fi + +if test -f Makefile.SH; then + echo mv Makefile.SH Makefile.SH~ + mv Makefile.SH Makefile.SH~ +fi + +args="-DTOPDIR=$topdir -DCURDIR=$curdir" + +echo jmake $args +if jmake $args; then + echo sh Makefile.SH + sh Makefile.SH +else + echo "jmake failed, aborting" >&2 + exit 1 +fi +!NO!SUBS! +chmod 755 jmkmf +$eunicefix jmkmf diff --git a/jmake/jmkmf.man b/jmake/jmkmf.man new file mode 100644 index 0000000..93af1f4 --- /dev/null +++ b/jmake/jmkmf.man @@ -0,0 +1,80 @@ +''' $Id: jmkmf.man,v 3.0.1.1 1995/05/12 11:58:03 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: jmkmf.man,v $ +''' Revision 3.0.1.1 1995/05/12 11:58:03 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0 1993/08/18 12:04:20 ram +''' Baseline for dist 3.0 netwide release. +''' +.TH JMKMF 1 ram +.SH NAME +jmkmf \- runs jmake with the correct options +.SH SYNOPSIS +.B jmkmf +[ +.I top-level dir +[ +.I current dir +] +] +.SH DESCRIPTION +.I Jmkmf +is a wrapper which calls +.I jmake +with the correct options, defining the symbols +.SM TOPDIR +(location of the top-level directory) and +.SM CURDIR +(current directory). The generated +.I Makefile.SH +is then ran through +.I /bin/sh +to produce a +.I Makefile. +.PP +.I Jmkmf +is useful when you generate a makefile for the first time. +.PP +When ran without arguments, +.I jmkmf +will scan the directories upwards, looking for a .package file marking +the top of your sources. It will then derive the top-level directory +and the name of the current directory by itself. +.PP +Once you have a +.I Makefile.SH +generated by +.I jmake, +and have run Configure already, you can use +.I make Makefile.SH +to build the Makefile.SH again and +.I make Makefile +to run the Makefile.SH through +.I /bin/sh. +To use the recursive commands, you have to append an 's' at the +end of the name as in +.I make Makefiles.SH +and +.I make Makefiles. +.SH AUTHOR +Raphael Manfredi +.SH FILES +.PD 0 +.TP 20 +Jmakefile +High level description of makefile +.TP +.package +The file marking the top of your package tree +.PD +.SH "SEE ALSO" +jmake(1), packinit(1). diff --git a/kit/Jmakefile b/kit/Jmakefile new file mode 100644 index 0000000..9d2b41a --- /dev/null +++ b/kit/Jmakefile @@ -0,0 +1,49 @@ +/* + * Jmakefile for kit maker + */ + +;# $Id: Jmakefile,v 3.0.1.2 1994/04/22 09:35:35 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.2 1994/04/22 09:35:35 ram +;# patch23: new kitpost script +;# +;# Revision 3.0.1.1 1994/01/24 13:42:21 ram +;# patch16: added dependency generation stage +;# +;# Revision 3.0 1993/08/18 12:04:21 ram +;# Baseline for dist 3.0 netwide release. +;# + +SCRIPT = makedist manifake kitsend kitpost + +ShellScriptTarget($(SCRIPT)) +InstallScript(makeSH,$(SCRIPTDIR)) +InstallManPage(makeSH,$(MANSRC)) + +SCRIPTSH = \ +|expand f!$(SCRIPT)! + !f.SH \ +-expand \\ + +>SED +>RM +>MKDEP + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(SCRIPTSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>[ ]*\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + diff --git a/kit/Makefile.SH b/kit/Makefile.SH new file mode 100755 index 0000000..bde4076 --- /dev/null +++ b/kit/Makefile.SH @@ -0,0 +1,235 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] +: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=kit +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ + +######################################################################## +# Force 'make depend' to be performed first -- do not edit + +.FORCE_DEPEND:: + +all:: .FORCE_DEPEND + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.2 1994/04/22 09:35:35 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.2 1994/04/22 09:35:35 ram +# patch23: new kitpost script +# +# Revision 3.0.1.1 1994/01/24 13:42:21 ram +# patch16: added dependency generation stage +# +# Revision 3.0 1993/08/18 12:04:21 ram +# Baseline for dist 3.0 netwide release. +# + +SCRIPT = makedist manifake kitsend kitpost + +all:: $(SCRIPT) + +local_realclean:: + $(RM) $(SCRIPT) + +makedist: makedist.SH + /bin/sh makedist.SH + +manifake: manifake.SH + /bin/sh manifake.SH + +kitsend: kitsend.SH + /bin/sh kitsend.SH + +kitpost: kitpost.SH + /bin/sh kitpost.SH + + +install:: $(SCRIPTS) $(LSCRIPTS) + @for file in $(SCRIPTS) $(LSCRIPTS); do \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(INSTALL) -c -m 555 $$file $(SCRIPTDIR)); \ + done + +deinstall:: + @for file in $(SCRIPTS) $(LSCRIPTS); do \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(RM) $(SCRIPTDIR)/$$file); \ + done + +install.man:: + @if test "$(MANSRC)"; then \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(SCRIPTS); do \ + (set -x; \ + $(INSTALL) -c -m 444 $$file.man $(MANSRC)/$$file.$(L)); \ + done; \ + else exit 0; fi + +deinstall.man:: + @if test "$(MANSRC)"; then \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(SCRIPTS); do \ + (set -x; $(RM) $(MANSRC)/$$file.$(L)); \ + done; \ + else exit 0; fi + +install:: makeSH + $(INSTALL) -c -m 555 makeSH $(SCRIPTDIR) + +deinstall:: + $(RM) $(SCRIPTDIR)/makeSH + +install.man:: makeSH.man + $(INSTALL) -c -m 444 makeSH.man $(MANSRC)/makeSH.$(L) + +deinstall.man:: + $(RM) $(MANSRC)/makeSH.$(L) + +SCRIPTSH = \ + makedist.SH \ + manifake.SH \ + kitsend.SH \ + kitpost.SH + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(SCRIPTSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>[ ]*\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: local_clean +realclean: local_realclean +clobber: local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Empty rules for directories with no sub-directories -- do not edit + +install:: + @echo "install in $(CURRENT) done." + +deinstall:: + @echo "deinstall in $(CURRENT) done." + +install.man:: + @echo "install.man in $(CURRENT) done." + +deinstall.man:: + @echo "deinstall.man in $(CURRENT) done." + +Makefiles:: + +Makefiles.SH:: + +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/kit/README b/kit/README new file mode 100644 index 0000000..a521da2 --- /dev/null +++ b/kit/README @@ -0,0 +1,35 @@ +This directory contains a rudimentary kit maker. + +N.B.: This must not be confused with the kit package, which is a set of shell +scripts for sending arbitrary files and directories by mail and unpacking them. +One could call kit a binary tarmailer. The kit package has been released +separately from dist (posted on comp.sources.unix in 1991). + +Larry Wall said: + + Depending on where you are going to send your kits you might prefer + to use Rich $alz's kit maker instead--it makes more robust kits + but assumes more about the target system. + +I say: + + If you are using RCS 4.3, be sure to use makedist instead of your + own shell archiver, unless you do not use $Id, $Header or $Locker + markers. Moreover, makedist will take the latest checked in + revision intead of the working file, so that you archive a coherent + package even if you made some mods since the last patch. + +You run makedist in the top level directory of your package and it uses +the MANIFEST.new file to generate shar scripts of about 50000 bytes each. + +Just make sure MANIFEST.new contains everything you want, including any +Configure, config.h.SH, or patchlevel.h files. A prototype patchlevel.h +may be found in ../gen/patchlevel.h. See the manpage for more details. + +If you do not wish to build up shell archives but an up-to-date copy of +your source tree, run someting like: + + makedist -c dir + +to build an up-to-date source tree in dir, which you can then archive using +your own shell archiver. diff --git a/kit/kitpost.SH b/kit/kitpost.SH new file mode 100755 index 0000000..2a86bb3 --- /dev/null +++ b/kit/kitpost.SH @@ -0,0 +1,237 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting kit/kitpost (with variable substitutions)" +cat >kitpost <>kitpost <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("hrVm:D:H:"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$RCSEXT = ',v' unless $RCSEXT; +if ($inews eq 'inews') { + $inews = '/usr/lib/news/inews' if -f '/usr/lib/news/inews'; +} + +chdir '..' if -d '../bugs'; + +&readpackage; + +$orgname = &tilda_expand($orgname); +chop($orgname = `cat $orgname`) if $orgname =~ m|^/|; + +if ($opt_r) { + $repost = ' (REPOST)'; +} + +while ($_ = shift) { + if (/^(kit)?[1-9][\d\-]*$/) { + s/^kit//; + push(@argv,$_); + } else { + push(@ngroups,$_); + } +} +$ngroups = join(',',@ngroups) unless $#ngroups < 0; +$dest = $opt_m; +&usage unless $ngroups || $dest; + +@ARGV = @argv; + +if (-f "$package.kit10") { + @filelist = <$package.kit[0-9][0-9]>; +} +else { + @filelist = <$package.kit[0-9]>; +} +pop(@filelist) =~ /(\d+)$/ && ($maxnum = $1 + 0); + +if ($#ARGV < 0) { + $argv = "1-$maxnum"; + @ARGV = $argv; +} + +$argv = &rangeargs(@ARGV); +@ARGV = split(' ', $argv); + +$argv =~ s/ $//; + +if ($#ARGV < 0) { + print STDERR "$progname: no kits specified.\n"; + &usage; +} else { + local($s) = $#ARGV ? 's' : ''; + print "$progname: posting $package $baserev kit$s $argv to $ngroups...\n" + if $ngroups; + print "$progname: mailing $package $baserev kit$s $argv to $dest...\n" + if $dest; +} + +$desc = "$opt_D, " if $opt_D; + +fork && exit; + +# Compute a suitable root message ID that all parts will reference, so that +# threaded news readers will correctly process them. +# Unfortunately, this works only when all kits are sent. +($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = + localtime(time); +$mon++; +$rootmid = "$year$mon$mday$hour$min$sec.AA$$"; +$first = $maxnum >= 10 ? "01" : "1"; +$rootmsgid = "<$rootmid.P$first.$maintloc>"; + +until ($#ARGV < 0) { + $kitnum = shift; + $kitnum = "0$kitnum" if $kitnum < 10 && $maxnum >= 10; + open(FILE, "$package.kit$kitnum") || + die "$progname: can't open $package.kit$kitnum: $!\n"; + if ($ngroups) { + open(INEWS,"|$inews -h") || die "$progname: can't fork $inews: $!\n"; + } + if ($dest) { + $opt = '-odq' if $mailer =~ /sendmail/; + $dest =~ s/,/ /g; + ($to = $dest) =~ s/\s+/, /g; + open(MAILER,"|$mailer $opt $dest") || + die "$progname: can't fork $mailer: $!\n"; + } + + $msg_id = "<$rootmid.P$kitnum.$maintloc>"; + $msg_id = $rootmsgid if $kitnum == 1; + $msg_id .= "\nReferences: $rootmsgid" if $kitnum != 1; + + print INEWS "Newsgroups: $ngroups\n"; + print MAILER "To: $to\n"; +$head = < +Archive-name: $package-$baserev/part$kitnum +Environment: UNIX + +EOH + print INEWS $head; + print MAILER $head; + + if ($kitnum == 1 && $opt_H) { + open(HEAD, $opt_H) || warn "$progname: can't open $opt_H: $!\n"; + while () { + print INEWS; + print MAILER; + } + close HEAD; + } + + while () { + print INEWS; + print MAILER; + } + close FILE; + close INEWS; + die "$progname: could not post part$kitnum.\n" if $ngroups && $?; + close MAILER; + die "$progname: could not send part$kitnum.\n" if $dest && $?; +} + +sub usage { + print STDERR <= 0) { + $_ = shift(@_); + while (/^\s*\d/) { + s/^\s*(\d+)//; + $min = $1; + if (s/^,//) { + $max = $min; + } + elsif (s/^-(\d*)//) { + $max = $1; + if ($max == 0 && $maxnum) { + $max = $maxnum; + } + s/^[^,],?//; + } + else { + $max = $min; + } + for ($i = $min; $i <= $max; ++$i) { + $result .= $i . ' '; + } + } + } + $result; +} + +!NO!SUBS! +$grep -v '^;#' ../pl/package.pl >>kitpost +$grep -v '^;#' ../pl/tilde.pl >>kitpost +$grep -v '^;#' ../pl/profile.pl >>kitpost +chmod +x kitpost +$eunicefix kitpost diff --git a/kit/kitpost.man b/kit/kitpost.man new file mode 100644 index 0000000..d7ebf90 --- /dev/null +++ b/kit/kitpost.man @@ -0,0 +1,89 @@ +''' $Id: kitpost.man,v 3.0.1.2 1995/05/12 11:58:09 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: kitpost.man,v $ +''' Revision 3.0.1.2 1995/05/12 11:58:09 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0.1.1 1994/05/06 13:55:01 ram +''' patch23: created +''' +.TH KITSEND 1 ram +.SH NAME +kitpost \- posts distribution kits +.SH SYNOPSIS +.B kitpost +[ +.B \-hrV +] [ +.B -H +.I file +] [ +.B -D +.I desc +] [ +.B -m +.I dest1,dest2 +] [ +.I kits +] [ +.I newsgroups +] +.SH DESCRIPTION +.I Kitpost +posts distribution kits made by \fImakedist\fR to some (source) newsgroups +specified on the command line. If you do not specify any kit list, then all the +kits are sent. Otherwise, only the specified kits will be (re)sent. +.PP +A kit list may include ranges, \fI1-10\fR specifying kits 1 through 10, +and \fI5-\fR meaning kits 5 up to the last one. You may also specify kit +numbers by separating them with commas or spaces, and even mix with ranges, +such as: \fI1 3 5-7 9\fR. +.PP +.I Kitpost +ensures correct \fIReferences:\fR lines are inserted in your postings so that +all parts but the first point to the root article. Threaded newsreaders and +end-users traditionally appreciate that. +.SH OPTIONS +The following options are recognized by \fIkitpost\fR: +.TP 10 +.B \-h +Print help message and exit. +.TP +\fB\-m\fI dest1,destn\fR +Sends kits by e-mail to the specified recipients. This option may be used in +conjunction with newsgroup posting. It is mainly intended for sites where +direct posting to a moderated newsgroup is not allowed by \fIinews\fR. You may +thus send your kits to the newsgroup moderator in a form that will ease the +whole posting process. +.TP +.B \-r +Signals a repost. +.TP +\fB\-D\fI description\fR +Specify a description string that will be added to the subject line. Usually +a brief sentence (less than, say, 40 characters). +.TP +\fB\-H\fI file\fR +Specify a file to be used as header introduction in the first part of your +posting. Usually the root README file. +.TP +.B \-V +Print version number and exit. +.SH BUGS +Article cross-referencing is properly set-up only when the whole package is +(re)posted in one batch. +.PP +It is not currently possible to set-up the article headers manually or +better, interactively. +.SH AUTHOR +Raphael Manfredi +.SH "SEE ALSO" +makedist(1), kitsend(1). diff --git a/kit/kitsend.SH b/kit/kitsend.SH new file mode 100755 index 0000000..47bc354 --- /dev/null +++ b/kit/kitsend.SH @@ -0,0 +1,192 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting kit/kitsend (with variable substitutions)" +cat >kitsend < +# +# $Log: kitsend.SH,v $ +# Revision 3.0.1.2 1994/05/06 13:59:57 ram +# patch23: random code cleanup to follow pat tools style +# patch23: made configurable from dist profile +# patch23: now understands -V and -h options +# patch23: mails now flagged with a bulk precedence +# patch23: added X-Mailer header and now calls mailer via open() +# +# Revision 3.0.1.1 1993/08/19 06:42:15 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:04:25 ram +# Baseline for dist 3.0 netwide release. +# + +\$orgname='$orgname'; +\$mailer='$mailer'; +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +!GROK!THIS! +cat >>kitsend <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts('hV'); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$orgname = &tilda_expand($orgname); +chop($orgname = `cat $orgname`) if $orgname =~ m|^/|; + +&readpackage; + +while ($_ = shift) { + if (/^(kit)?[1-9][\d,-]*$/) { + s/^kit//; + push(@argv, $_); + } + else { + push(@dest, $_); + } +} +$dest = join(' ',@dest); +&usage unless $dest; + +@ARGV = @argv; + +if (-f "$package.kit10") { + @filelist = <$package.kit[0-9][0-9]>; +} +else { + @filelist = <$package.kit[0-9]>; +} +pop(@filelist) =~ /(\d+)$/ && ($maxnum = $1 + 0); + +if ($#ARGV < 0) { + $argv = "1-$maxnum"; + @ARGV = $argv; +} +$argv = &rangeargs(@ARGV); +@ARGV = split(' ', $argv); + +$argv =~ s/ $//; + +if ($#ARGV < 0) { + die "$progname: no kits specified.\n"; +} elsif ($#ARGV) { + print "$progname: sending $package $baserev kits $argv to $dest...\n"; +} else { + print "$progname: sending $package $baserev kit $argv to $dest...\n"; +} + +fork && exit; + +$opt = '-odq' if $mailer =~ /sendmail/; + +until ($#ARGV < 0) { + $kitnum = shift; + + # Provision for broken mailers... + @dest = split(' ', $dest); + while (@smalldest = splice(@dest, 0, 50)) { + $to = join(', ', @smalldest); # Sensible To: for sendmail + $smalldest = join(' ', @smalldest); + + open(MAILER, "|$mailer $opt $smalldest") || + die "$progname: can't fork $mailer: $!\n"; + print MAILER +"To: $to +Subject: $package $baserev kit #$kitnum +Precedence: bulk +X-Mailer: dist [version $version PL$patchlevel] +Organization: $orgname + +[There are $maxnum kits for $package version $baserev.] + +"; + $kitnum = "0$kitnum" if $kitnum < 10 && $maxnum >= 10; + open(FILE,"$package.kit$kitnum") || + die "$progname: can't open $package.kit$kitnum: $!\n"; + while () { + print MAILER; + } + close FILE; + close MAILER; + warn "$progname: ERROR mailing of $package.kit$kitnum to $dest\n" if $?; + } +} + +sub usage { + print STDERR <= 0) { + $_ = shift(@_); + while (/^\s*\d/) { + s/^\s*(\d+)//; + $min = $1; + if (s/^,//) { + $max = $min; + } + elsif (s/^-(\d*)//) { + $max = $1; + if ($max == 0 && $maxnum) { + $max = $maxnum; + } + s/^[^,],?//; + } + else { + $max = $min; + } + for ($i = $min; $i <= $max; ++$i) { + $result .= $i . ' '; + } + } + } + $result; +} + +!NO!SUBS! +$grep -v '^;#' ../pl/package.pl >>kitsend +$grep -v '^;#' ../pl/tilde.pl >>kitsend +$grep -v '^;#' ../pl/profile.pl >>kitsend +chmod +x kitsend +$eunicefix kitsend diff --git a/kit/kitsend.man b/kit/kitsend.man new file mode 100644 index 0000000..d5bca4c --- /dev/null +++ b/kit/kitsend.man @@ -0,0 +1,42 @@ +''' $Id: kitsend.man,v 3.0.1.1 1994/05/06 14:00:11 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: kitsend.man,v $ +''' Revision 3.0.1.1 1994/05/06 14:00:11 ram +''' patch23: documented new -V and -h options +''' +''' Revision 3.0 1993/08/18 12:04:26 ram +''' Baseline for dist 3.0 netwide release. +''' +.TH KITSEND 1 ram +.SH NAME +kitsend \- sends distribution kits +.SH SYNOPSIS +.B kitsend +[ +.B \-hV +] [ \fIkits\fR ] \fIrecipients\fR +.SH DESCRIPTION +.I Kitsend +sends distribution kits made by \fImakedist\fR to some recipients specified +on the command line. If you do not specify any kit list, then all the +kits are sent. Otherwise, only the specified kits will be (re)sent. +.PP +A kit list may include ranges, \fI1-10\fR specifying kits 1 through 10, +and \fI5-\fR meaning kits 5 up to the last one. You may also specify kit +numbers by separating them with commas or spaces, and even mix with ranges, +such as: \fI1 3 5-7 9\fR. +.PP +The \fB\-h\fR switch will print out the usage and \fB-V\fR will print +the version number. +.SH AUTHOR +Harlan Stenn +.SH "SEE ALSO" +makedist(1), kitpost(1). diff --git a/kit/makeSH b/kit/makeSH new file mode 100644 index 0000000..54e7b3e --- /dev/null +++ b/kit/makeSH @@ -0,0 +1,76 @@ +#!/bin/sh + +# $Id: makeSH,v 3.0.1.1 1993/08/19 06:42:16 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# Original Author: Larry Wall +# +# $Log: makeSH,v $ +# Revision 3.0.1.1 1993/08/19 06:42:16 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:04:26 ram +# Baseline for dist 3.0 netwide release. +# + +for file do + if test -f $file.SH; then + mv $file.SH $file.SH.old + echo "makeSH: renaming $file.SH as $file.SH.old." + fi + base=`basename $file` + + cat >$file.SH <$base <>$file.SH ;; + esac + + cat >>$file.SH <>$base <<'!NO!SUBS!' +BLURFL + + sed -e '1{' -e '/#!.*\/bin\/sh$/d' -e '}' $file >>$file.SH + + cat >>$file.SH < +.SH SEE ALSO +pat(1), metaconfig(1), makedist(1). +.SH BUGS +It could assume that variables from metaconfig's Glossary need to be +initialized in the first section, but I'm too lazy to make it do that. diff --git a/kit/makedist.SH b/kit/makedist.SH new file mode 100755 index 0000000..2d38f2a --- /dev/null +++ b/kit/makedist.SH @@ -0,0 +1,460 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +echo "Extracting kit/makedist (with variable substitutions)" +cat >makedist <>makedist <<'!NO!SUBS!' + +&profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts('c:f:dhvqs:V'); + +$ENV{'DIST'} = '/dev/null'; # Disable ~/.dist_profile + +if ($opt_V) { + print STDERR "makedist $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$MAXKITSIZE = 50000 unless $MAXKITSIZE = $opt_s; +$KITOVERHEAD = 1800; +$FILEOVERHEAD = 90; +$CHOPSIZE = $MAXKITSIZE - $KITOVERHEAD - $FILEOVERHEAD; + +$NEWMANI = 'MANIFEST.new' unless $NEWMANI = $opt_f; +$MANI = 'MANIFEST' unless $opt_f; +$PACKLIST = 'PACKLIST'; +$PACKNOTES = 'PACKNOTES'; + +$tmpdir = "/tmp/MKst$$"; # Where to copy distribution +$tmpdir = '.' if $opt_q; # Quick mode: no need to copy distribution + +&set_sig('aborted'); # Make sure we clean up in case of emergency + +&readpackage; +&get_patchlevel; + +eval '&manifake'; # Want to trap possible die and redirect to fatal +if ($@ ne '') { + chop($@); + &fatal($@); +} + +if ($opt_c) { # Copy distribution only, no shell archive + &distcopy; + exit 0; +} + +&distfake; +©right'init($copyright) if -f $copyright; + +unlink <$package.kit? $package.kit??>; +chop($curdir = `pwd`); +chdir $tmpdir || die "Can't chdir to $tmpdir.\n"; + +&maniread; +&kitlists; +&manimake; +&kitbuild; +&cleanup; +exit 0; + +# Physically build the kits +sub kitbuild { + $numkits = $#list; + if ($numkits > 9) { + $sp = '%02d'; + } else { + $sp = '%d'; + } + + for ($kitnum = 1; $kitnum <= $numkits; $kitnum++) { + $list = $list[$kitnum]; + $kit = sprintf("$package.kit" . $sp,$kitnum); + print "*** Making $kit ***\n"; + open(KIT,">$curdir/$kit") || do fatal("Can't create $curdir/$kit: $!"); + + &kitleader; + + @files = split(' ',$list); + reset 'X'; + for $file (@files) { + $_ = $file; + while (s|^(.*)/.*$|$1|) { + push(@Xdirs,$_) unless $Xseen{$_}++; + } + } + print KIT "mkdir ",join(' ', sort @Xdirs)," 2>/dev/null\n"; + + foreach $file (@files) { + print "\t",$file,"\n" if $opt_v; + print KIT "echo Extracting $file\n"; + print KIT "sed >$file <<'!STUFFY!FUNK!' -e 's/X//'\n"; + open(FILE, $file); + ©right'reset; # Reset copyright for new file + while () { + # Use Lock[e]r as a pattern in case it is applied on ourselves + s|Lock[e]r:.*\$|\$|; # Remove locker mark + print KIT ©right'filter($_, 'X'); + } + close FILE; + print KIT "!STUFFY!FUNK!\n"; + -x "$file" && (print KIT "chmod +x $file\n"); + } + &kittrailer; + chmod 0755, $kit; + } +} + +sub kitlists { + for $filename (keys %comment) { + next if $filename =~ m|/$|; # Skip directories + next if -d $filename; # Better safe than sorry + ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime, + $blksize,$blocks) = stat($filename); + + # Make sure file is not larger than the CHOPSIZE limit. If it is, + # a split is attempted. + if ($size > $CHOPSIZE) { + print "Splitting $filename...\n" if $opt_v; + $file_comment = $comment{$filename}; + open(FILE, $filename) || die "Can't open $filename: $!\n"; + $piece = 'AA'; + ($dir, $name) = ('.', $filename) + unless ($dir, $name) = ($filename =~ m|(.*)/(.*)|); + $chopped = $dir . '/' . substr($name, 0, 11); + $chopped =~ s|^\./||; + &fatal("There is already a split file named $chopped") + if defined $Chopped{$chopped}; + $Chopped{$chopped} = $filename; # Association split <-> real file + $size = 0; + open(CURPIECE, ">$chopped:$piece") || + &fatal("Can't create $chopped:$piece: $!"); + while () { + if ($size + length($_) > $CHOPSIZE) { + close CURPIECE; + $size{"$chopped:$piece"} = $size; + $comment{"$chopped:$piece"} = "$file_comment (part $piece)"; + push(@files, "$chopped:$piece"); + print "\t$chopped:$piece ($size bytes)\n" if $opt_v; + $size = 0; + $piece++; # AA -> AB, etc... + open(CURPIECE, ">$chopped:$piece") || + &fatal("Can't create $chopped:$piece: $!"); + } + print CURPIECE $_; + $size += length($_); + } + close FILE; + close CURPIECE; + $size{"$chopped:$piece"} = $size; + $comment{"$chopped:$piece"} = "$file_comment (part $piece)"; + push(@files, "$chopped:$piece"); + print "\t$chopped:$piece ($size bytes)\n" if $opt_v; + delete $comment{$filename}; # File split, not in PACKLIST + } else { + $size += 1000000 if $filename =~ /README/; + $size{$filename} = $size; + push(@files, "$filename"); + } + } + + # Build a file PACKNOTES to reconstruct split files + if (defined %Chopped) { + open(PACKNOTES, ">$PACKNOTES") || &fatal("Can't create PACKNOTES: $!"); + foreach (keys %Chopped) { + print PACKNOTES < $Chopped{$_} +rm -f $_:[A-Z][A-Z] +EOC + } + close PACKNOTES; + push(@files, $PACKNOTES); + $comment{$PACKNOTES} = 'Script to reconstruct split files'; + ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime, + $blksize,$blocks) = stat($PACKNOTES); + $size{$PACKNOTES} = $size; + } + + # Currently, file PACKLIST does not exist, so its size is unknown and + # it cannot be correctly put in one archive. Therefore, we take the + # size of MANIFEST.new, which will give us a good estimation. + push(@files, 'PACKLIST'); + + ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime, + $blksize,$blocks) = stat($NEWMANI); + $size{$PACKLIST} = $size; + + sub revnum { $size{$a} < $size{$b} ? 1 : $size{$a} > $size{$b} ? -1 : 0; } + @files = sort revnum @files; + + for (@files) { + $size = $size{$_}; + $size -= 1000000 if /README/; + $i=1; + while (($newtot = int($tot[$i] + $size + $size/40 + $FILEOVERHEAD)) > + $MAXKITSIZE-$KITOVERHEAD && $tot[$i]) { + $i++; + } + $tot[$i] = $newtot; + print "Adding $_ to kit $i giving $newtot bytes\n" if $opt_d; + $kit{$_} = $i; + $list[$i] .= " $_"; + } +} + +# Read manifest file and initialize the %comment array. +sub maniread { + do fatal("You don't have a $NEWMANI file. Run manifake") + unless -f "$NEWMANI"; + open(NEWMANI,$NEWMANI) || do fatal("Can't read $NEWMANI: $!"); + while () { + ($key,$val) = split(' ',$_,1) unless ($key,$val) = /^(\S+)\s+(.*)/; + $comment{$key} = $val; + } + close NEWMANI; +} + +# MANIFEST and MANIFEST.new must say the same thing. Create the +# PACKLIST file (thus avoiding kit numbers in MANIFEST, which causes big +# patches when only re-ordering occurred). Note that PACKLIST should +# not appear in MANIFEST.new (the user may remove it). +sub manimake { + # Add built packlist + $comment{$PACKLIST} = 'Which files came with which kits'; + + open(PACKLIST, ">$PACKLIST") || do fatal("Can't create $PACKLIST: $!"); + print PACKLIST +"After all the $package kits are run you should have the following files: + +Filename Kit Description +-------- --- ----------- +"; + for (sort keys(comment)) { + printf PACKLIST "%-27s %2s %.47s\n", $_, $kit{$_}, $comment{$_}; + } + close PACKLIST; +} + +sub kitleader { + local($plevel); + $plevel = " at patchlevel $patch_level" if $patch_level ne ''; + print KIT <kit${kitnum}isdone +run='' +config='' +for iskit in$rangelist; do + if test -f kit\${iskit}isdone; then + run=\"\$run \$iskit\" + else + todo=\"\$todo \$iskit\" + fi +done +case \$todo in + '') + echo \"You have run all your kits.\" +EOM + if (defined %Chopped) { # Some splitting occurred + print KIT <) { + /^#define\s+PATCHLEVEL\s+(\w+)/ && ($patch_level = $1); + } + close PL; + } +} + +sub distfake { + return if $opt_q; + local($sw); + $sw = 's' unless $opt_v; + mkdir($tmpdir, 0700) || die "Can't create directory $tmpdir.\n"; + print "Building a copy of distribution in $tmpdir...\n" if $opt_v; + system 'perl', '-S', 'patcol', "-a$sw", '-f', $NEWMANI, '-d', $tmpdir; + system 'cp', $NEWMANI, "$tmpdir/$NEWMANI" + unless -f "$tmpdir/$NEWMANI" && !$opt_f; +} + +sub distcopy { + local($sw); # Switch to force patcol to copy checked out files + &makedir($opt_c); + print "Building a copy of distribution in $opt_c...\n" if $opt_v; + $sw = 'c' if $opt_q; + $sw .= 's' unless $opt_v; + system 'perl', '-S', 'patcol', "-aRC$sw", '-f', $NEWMANI, '-d', $opt_c; +} + +sub distrm { + return if $opt_q; + print "Removing distribution in $tmpdir...\n" if $opt_v; + chdir "/"; # Do not stay in removed directory... + system '/bin/rm', '-rf', "$tmpdir"; +} + +sub splitrm { + foreach $base (keys %Chopped) { + print "Removing split files for $base:\n" if $opt_v; + $piece = 'AA'; + while (-f "$base:$piece") { + print "\t$base:$piece\n" if $opt_v; + unlink "$base:$piece"; + $piece++; # AA -> AB, etc... + } + } +} + +sub cleanup { + &distrm if -d $tmpdir; + if ($opt_q) { + &splitrm; # Remove in-place split files + unlink $PACKLIST, $PACKNOTES; + } +} + +sub fatal { + local($reason) = shift(@_); + &cleanup; + die "$reason\n"; +} + +sub set_sig { + local($handler) = @_; + $SIG{'HUP'} = $handler; + $SIG{'INT'} = $handler; + $SIG{'QUIT'} = $handler; + $SIG{'TERM'} = $handler; +} + +sub aborted { + &set_sig('IGNORE'); + $opt_v = 1; # Force verbose message in distrm + &cleanup; + print "Aborted.\n"; + exit 1; +} + +sub usage { + print STDERR <>makedist +$grep -v '^;#' ../pl/manifake.pl >>makedist +$grep -v '^;#' ../pl/copyright.pl >>makedist +$grep -v '^;#' ../pl/makedir.pl >>makedist +$grep -v '^;#' ../pl/tilde.pl >>makedist +$grep -v '^;#' ../pl/profile.pl >>makedist +chmod +x makedist +$eunicefix makedist diff --git a/kit/makedist.man b/kit/makedist.man new file mode 100644 index 0000000..0a13318 --- /dev/null +++ b/kit/makedist.man @@ -0,0 +1,147 @@ +.rn '' }` +''' $Id: makedist.man,v 3.0.1.2 1995/05/12 11:58:16 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: makedist.man,v $ +''' Revision 3.0.1.2 1995/05/12 11:58:16 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0.1.1 1994/05/06 14:00:50 ram +''' patch23: now mentions kitpost and kitsend +''' +''' Revision 3.0 1993/08/18 12:04:31 ram +''' Baseline for dist 3.0 netwide release. +''' +''' +.de Sh +.br +.ne 5 +.PP +\fB\\$1\fR +.PP +.. +.de Sp +.if t .sp .5v +.if n .sp +.. +''' +''' Set up \*(-- to give an unbreakable dash; +''' string Tr holds user defined translation string. +''' Bell System Logo is used as a dummy character. +''' +.ie n \{\ +.tr \(*W-\*(Tr +.ds -- \(*W- +.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +.ds L" "" +.ds R" "" +.ds L' ' +.ds R' ' +'br\} +.el\{\ +.ds -- \(em\| +.tr \*(Tr +.ds L" `` +.ds R" '' +.ds L' ` +.ds R' ' +'br\} +.TH MAKEDIST 1 LOCAL +.SH NAME +makedist \- a distribution kit maker +.SH SYNOPSIS +.B makedist +[ \fB\-dhqvV\fR ] [ \fB\-c\fI dir\fR ] +[ \fB\-s\fI size\fR ] [\fB\-f \fImanifest\fR ] +.SH DESCRIPTION +.I Makedist +is a rather simpleminded shar program that knows how to pack files +into multiple kits of approximately 50000 bytes each. +The shar scripts produced assume very little about the target machine; +there is correspondingly little error checking done compared to other +shar programs. Alternatively, with the \fB\-c\fR option, you can +create a directory containing the whole source tree, and then pack it +up using your own shell archiver. +.PP +If you are using the copyright expansion feature (as determined by +\fIpackinit\fR), then you have to pack your distribution using this +program to ensure the copyright is correctly set. +.PP +In order to run \fImakedist\fR you have to do two things: +.IP 1) 4 +Create a .package file in the package's top-level directory by running +\fIpackinit\fR. +This program will ask you about your package and remember what you tell +it so that all the \fIdist\fR programs can be smart. +.IP 2) 4 +Create a MANIFEST.new file in your top-level directory that lists all the +files in your package. +The filename should be the first field on each line. +After some whitespace you can add a comment describing your file (briefly). +.PP +After running \fImakedist\fR, +you will have a set of kits in your top-level directory. +If your package name is "foo", they will be named foo.kit1, foo.kit2, etc. +The file created PACKLIST file is automatically added to the distribution and +tells which files come with which kits. +If you used the \fB\-c\fR option, you will end-up with a single directory +instead, containing the whole distribution, ready to be sent to the end-user. +.PP +If a file is too large to be packed as-is in one archive, it will be +automatically split in smaller parts. Only the first 11 characters of the file +will be kept though, and \fImakedist\fR will abort if two distinct files are +to be split and have the same 11 first characters in their names. The split +files will automatically be reconstructed at the end of the archive extraction +by runnning a script generated in PACKNOTES. +.PP +You may then mail your kits via \fIkitsend\fR or post them with \fIkitpost\fR. +.SH OPTIONS +The following options are handled by \fImakedist\fR: +.TP 10 +.B \-c \fIdir\fR +Tell \fImakedist\fR that the distribution should be copied (mirrored) in +the specified directory, instead of producing shell archives. Compatible with +the \fB\-q\fR option. +.TP +.B \-d +Turn on debug mode. Probably not useful. +.TP +\fB-f\fI file\fR +Use \fIfile\fR as manifest. By default, MANIFEST.new is used. +.TP +.B \-h +Print help message and exit. +.TP +.B \-q +Quick production of the kits: the checked-out version of the files is used, +instead of using the RCS file to actually get the latest checked-in version. +This will save some considerable time, but you have to be sure the checked-out +version is up-to-date or you might end up with an inconsistent package. +.TP +\fB\-s\fI size\fR +Set maximum kit size to \fIsize\fR bytes. +.TP +.B \-v +Verbose mode: trace kit building process or tree mirroring. +.TP +.B \-V +Print version number and exit. +.SH AUTHORS +Larry Wall (version 2.0) +.br +Raphael Manfredi +.SH FILES +Creates ./$package.kit* unless \fB\-c\fR option is used. +.br +PACKLIST and PACKNOTES are also temporarily created. +.SH "SEE ALSO" +kitsend(1), kitpost(1), metaconfig(1), patcol(1) +.rn }` '' diff --git a/kit/manifake.SH b/kit/manifake.SH new file mode 100755 index 0000000..0a7d561 --- /dev/null +++ b/kit/manifake.SH @@ -0,0 +1,51 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting kit/manifake (with variable substitutions)" +$spitshell >manifake <>manifake <<'!NO!SUBS!' +$NEWMANI = 'MANIFEST.new'; +$MANI = 'MANIFEST'; + +&manifake; + +!NO!SUBS! +chmod 755 manifake +$grep -v '^;#' ../pl/manifake.pl >> manifake +$eunicefix manifake diff --git a/kit/manifake.man b/kit/manifake.man new file mode 100644 index 0000000..9ec2754 --- /dev/null +++ b/kit/manifake.man @@ -0,0 +1,46 @@ +''' $Id: manifake.man,v 3.0.1.1 1995/05/12 11:58:21 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: manifake.man,v $ +''' Revision 3.0.1.1 1995/05/12 11:58:21 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0 1993/08/18 12:04:33 ram +''' Baseline for dist 3.0 netwide release. +''' +.TH MANIFAKE 1 ram +.SH NAME +manifake \- creates a MANIFEST.new out of a MANIFEST file +.SH SYNOPSIS +.B manifake +.SH DESCRIPTION +.I Manifake +is a real simpleminded program that takes a MANIFEST file, such as one +produced by a shar program, and creates a MANIFEST.new file ready to be +used by all the dist programs. What it does is that all archive numbers +are removed and the optional leading comments up to a dashed-line are +thrown away. +.PP +.I Manifake +will typically be used when converting an existing package +to use \fImetaconfig\fR or any other dist utility. +.SH AUTHOR +Raphael Manfredi +.SH FILES +.PD 0 +.TP 20 +MANIFEST +Original manifest produced by some shar program +.TP +MANIFEST.new +Faked manifest file, suitable for use by any dist programs. +.PD +.SH "SEE ALSO" +makedist(1), metaconfig(1), pat(1). diff --git a/lib/C/Jmakefile b/lib/C/Jmakefile new file mode 100644 index 0000000..1b2b569 --- /dev/null +++ b/lib/C/Jmakefile @@ -0,0 +1,20 @@ +/* + * Jmakefile for C subdirectory. + */ + +;# $Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:38 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.1 1994/01/24 13:43:38 ram +;# patch16: created +;# + +SetSubdirs(fake) diff --git a/lib/C/Makefile.SH b/lib/C/Makefile.SH new file mode 100755 index 0000000..764aa48 --- /dev/null +++ b/lib/C/Makefile.SH @@ -0,0 +1,188 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] +: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=lib/C +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:38 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.1 1994/01/24 13:43:38 ram +# patch16: created +# + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: sub_clean local_clean +realclean: sub_realclean local_realclean +clobber: sub_clobber local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Rules for building in sub-directories -- do not edit + +subdirs: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS) ;\ + do \ + (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)); \ + done + +install:: + @$(MAKE) subdirs TARGET=install VERB="Installing" FLAGS= + +deinstall:: + @$(MAKE) subdirs TARGET=deinstall VERB="Deinstalling" FLAGS= + +install.man:: + @$(MAKE) subdirs TARGET=install.man VERB="Installing man pages" FLAGS= + +deinstall.man:: + @$(MAKE) subdirs TARGET=deinstall.man VERB="Deinstalling man pages" FLAGS= + +sub_clean:: + @$(MAKE) subdirs TARGET=clean VERB="Cleaning" FLAGS= + @echo "Back to $(CURRENT) for "clean... + +sub_realclean:: + @$(MAKE) subdirs TARGET=realclean VERB="Real cleaning" FLAGS= + @echo "Back to $(CURRENT) for "realclean... + +sub_clobber:: + @$(MAKE) subdirs TARGET=clobber VERB="Clobbering" FLAGS= + @echo "Back to $(CURRENT) for "clobber... + +tag:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS) ;\ + do \ + (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) tag); \ + done + +Makefiles:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS);\ + do \ + echo "Making "Makefiles" in $(DIR)$$i..."; \ + (cd $$i || exit 1; \ + if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ + $(MAKE) $(MFLAGS) Makefiles) \ + done + +Makefiles.SH:: Makefile.SH + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS);\ + do \ + case "$(DIR)$$i/" in \ + */*/*/*/) newtop=../../../..;; \ + */*/*/) newtop=../../..;; \ + */*/) newtop=../..;; \ + */) newtop=..;; \ + esac; \ + case "$(TOP)" in \ + /*) newtop="$(TOP)" ;; \ + esac; \ + echo "Making Makefiles.SH in $(DIR)$$i..."; \ + (cd $$i || exit 1; $(MAKE) $(MFLAGS) -f ../Makefile \ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i;\ + $(MAKE) $(MFLAGS) Makefiles.SH) \ + done + +all:: + @$(MAKE) subdirs TARGET=all VERB="Making all" FLAGS= + +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/lib/C/fake/Jmakefile b/lib/C/fake/Jmakefile new file mode 100644 index 0000000..41afc72 --- /dev/null +++ b/lib/C/fake/Jmakefile @@ -0,0 +1,29 @@ +/* + * Jmakefile for C/fake subdirectory. + */ + +;# $Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:44 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.1 1994/01/24 13:43:44 ram +;# patch16: created +;# + +FILES = dup2.C getopt.C rename.C scandir.C setsid.C + +INSTALLFLAGS = -m 444 + +all:: /* So that default make does not default to install */ + +>PRIVLIB /* Grrr.. Have to let jmake know I need this */ + +MakeDirectories(install,$(PRIVLIB)/lib/C/fake) +InstallMultiple($(FILES),$(PRIVLIB)/lib/C/fake) diff --git a/lib/C/fake/Makefile.SH b/lib/C/fake/Makefile.SH new file mode 100755 index 0000000..6030d62 --- /dev/null +++ b/lib/C/fake/Makefile.SH @@ -0,0 +1,156 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] +: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=lib/C/fake +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:44 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.1 1994/01/24 13:43:44 ram +# patch16: created +# + +FILES = dup2.C getopt.C rename.C scandir.C setsid.C + +INSTALLFLAGS = -m 444 + +all:: + +install:: + @for dir in $(PRIVLIB)/lib/C/fake; do \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $$dir || $(INSTALLDIR) $$dir); \ + done + +install:: $(FILES) + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in $(FILES); do \ + (set -x; $(INSTALL) -c $(INSTALLFLAGS) $$i $(PRIVLIB)/lib/C/fake); \ + done + +deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in $(FILES); do \ + (set -x; $(RM) $(PRIVLIB)/lib/C/fake/$$i); \ + done + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: local_clean +realclean: local_realclean +clobber: local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Empty rules for directories with no sub-directories -- do not edit + +install:: + @echo "install in $(CURRENT) done." + +deinstall:: + @echo "deinstall in $(CURRENT) done." + +install.man:: + @echo "install.man in $(CURRENT) done." + +deinstall.man:: + @echo "deinstall.man in $(CURRENT) done." + +Makefiles:: + +Makefiles.SH:: + +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/lib/C/fake/dup2.C b/lib/C/fake/dup2.C new file mode 100644 index 0000000..97432b9 --- /dev/null +++ b/lib/C/fake/dup2.C @@ -0,0 +1,78 @@ +/* + * dup2.C -- A dup2 emulation. + */ + +/* + * $Id: dup2.C,v 3.0.1.1 1994/01/24 13:58:37 ram Exp ram $ + * + * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi + * + * You may redistribute only under the terms of the Artistic Licence, + * as specified in the README file that comes with the distribution. + * You may reuse parts of this distribution only within the terms of + * that same Artistic Licence; a copy of which may be found at the root + * of the source tree for dist 4.0. + * + * Original Author: Larry Wall + * + * $Log: dup2.C,v $ + * Revision 3.0.1.1 1994/01/24 13:58:37 ram + * patch16: created + * + */ + +#include "config.h" + +#ifdef I_FCNTL +#include +#endif + +#include "confmagic.h" /* Remove if not metaconfig -M */ + +#ifndef HAS_DUP2 +/* + * dup2 + * + * This routine duplicates file descriptor 'old' into 'new'. After the + * operation, both 'new' and 'old' refer to the same file 'old' was referring + * to in the first place. + * + * Returns 0 if OK, -1 on failure with errno being set to indicate the error. + * + */ +V_FUNC(int dup2, (old, new), + int old /* Opened file descriptor */ NXT_ARG + int new /* File descriptor we'd like to get */) +{ +#ifdef HAS_FCNTL +#ifdef F_DUPFD +#define USE_FNCTL +#endif +#endif + +#ifdef USE_FCNTL + if (old == new) + return 0; + + close(new); + return fcntl(old, F_DUPFD, new); +#else + int fd_used[256]; /* Fixed stack used to record dup'ed files */ + int fd_top = 0; /* Top in the fixed stack */ + int fd; /* Currently dup'ed file descriptor */ + + if (old == new) + return 0; + + close(new); /* Ensure one free slot */ + while ((fd = dup(old)) != new) /* Until dup'ed file matches */ + fd_used[fd_top++] = fd; /* Remember we have to close it later */ + + while (fd_top > 0) /* Close all useless dup'ed slots */ + close(fd_used[--fd_top]); + + return 0; +#endif +} +#endif + diff --git a/lib/C/fake/getopt.C b/lib/C/fake/getopt.C new file mode 100644 index 0000000..41019e1 --- /dev/null +++ b/lib/C/fake/getopt.C @@ -0,0 +1,133 @@ +/* + * getopt.C -- A getopt implementation. + */ + +/* + * $Id: getopt.C,v 3.0.1.1 1994/01/24 13:58:40 ram Exp ram $ + * + * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi + * + * You may redistribute only under the terms of the Artistic Licence, + * as specified in the README file that comes with the distribution. + * You may reuse parts of this distribution only within the terms of + * that same Artistic Licence; a copy of which may be found at the root + * of the source tree for dist 4.0. + * + * Original Author: unknown, got this off net.sources + * + * $Log: getopt.C,v $ + * Revision 3.0.1.1 1994/01/24 13:58:40 ram + * patch16: created + * + */ + +#include "config.h" +#include + +#ifdef I_STRING +#include +#else +#include +#endif + +#include "confmagic.h" /* Remove if not metaconfig -M */ + +#ifndef HAS_GETOPT + +/* + * Get option letter from argument vector + */ + +int opterr = 1, /* Useless, never set or used */ + optind = 1, /* Index into parent argv vector */ + optopt; /* Character checked for validity */ +char *optarg; /* Argument associated with option */ + +#define BADCH (int) '?' +#define EMSG "" + +#define tell(s) \ +do { \ + fputs(*nargv, stderr); \ + fputs(s, stderr); \ + fputc(optopt, stderr); \ + fputc('\n', stderr); \ + return BADCH; \ +} while (0) + +/* + * getopt + * + * Parses command line flags and arguments. Given the original arguments + * via the (nargc, nargv) tuple, and a list of flags via 'ostr', it returns + * the next flag recognized, and sets the externally visible 'optarg' + * variable to point to the start of the flags's parameter, if any expected. + * + * When facing an invalid flag, getopt() returns '?'. + * + * The 'ostr' string is a list of allowed flag characters, optionally by ':' + * when the flag expects a parameter, which can immediately follow the + * flag or come as the next word. + * + * In any case, the 'optopt' variable is set upon return to the flag being + * looked at, whether it was a valid flag or not. + */ +V_FUNC(int getopt, (nargc, nargv, ostr) + int nargc /* Argument count */ NXT_ARG + char **nargv /* Argument vector */ NXT_ARG + char *ostr /* String specifying options */) +{ + static char *place = EMSG; /* Option letter processing */ + register1 char *oli; /* Option letter list index */ + + /* + * Update scanning pointer. + */ + + if (!*place) { + if( + optind >= nargc || + *(place = nargv[optind]) != '-' || + !*++place + ) + return EOF; + if (*place == '-') { /* Found "--", end option processing */ + ++optind; + return EOF; + } + } + + /* + * Is option letter OK? + */ + + if ( + (optopt = (int)*place++) == (int)':' || + !(oli = index(ostr,optopt)) + ) { + if (!*place) ++optind; + tell(": illegal option -- "); + } + + /* + * Found a valid option, process it. + */ + + if (*++oli != ':') { /* Don't need argument */ + optarg = NULL; + if (!*place) ++optind; + } else { /* Need an argument */ + if (*place) optarg = place; /* No white space */ + else if (nargc <= ++optind) { /* No argument */ + place = EMSG; + tell(": option requires an argument -- "); + } else + optarg = nargv[optind]; /* White space */ + place = EMSG; + ++optind; + } + + return optopt; /* Dump back option letter */ +} +#endif + diff --git a/lib/C/fake/rename.C b/lib/C/fake/rename.C new file mode 100644 index 0000000..f50ea83 --- /dev/null +++ b/lib/C/fake/rename.C @@ -0,0 +1,45 @@ +/* + * rename.C -- A rename emulation, for renaming files only. + */ + +/* + * $Id: rename.C,v 3.0.1.1 1994/01/24 13:58:42 ram Exp ram $ + * + * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi + * + * You may redistribute only under the terms of the Artistic Licence, + * as specified in the README file that comes with the distribution. + * You may reuse parts of this distribution only within the terms of + * that same Artistic Licence; a copy of which may be found at the root + * of the source tree for dist 4.0. + * + * $Log: rename.C,v $ + * Revision 3.0.1.1 1994/01/24 13:58:42 ram + * patch16: created + * + */ + +#include "config.h" +#include "confmagic.h" /* Remove if not metaconfig -M */ + +#ifndef HAS_RENAME +/* + * rename + * + * Renames a file within a file system. This cannot be used to rename + * directories, unfortunately. + */ +V_FUNC(int rename, (from, to), + char *from /* Original name */ NXT_ARG + char *to /* Target name */) +{ + (void) unlink(to); + if (-1 == link(from, to)) + return -1; + if (-1 == unlink(from)) + return -1; + + return 0; +} +#endif + diff --git a/lib/C/fake/scandir.C b/lib/C/fake/scandir.C new file mode 100644 index 0000000..9d1cdd8 --- /dev/null +++ b/lib/C/fake/scandir.C @@ -0,0 +1,131 @@ +/* + * scandir.C -- A scandir implementation. + */ + +/* + * $Id: scandir.C,v 3.0.1.1 1994/01/24 13:58:45 ram Exp ram $ + * + * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi + * + * You may redistribute only under the terms of the Artistic Licence, + * as specified in the README file that comes with the distribution. + * You may reuse parts of this distribution only within the terms of + * that same Artistic Licence; a copy of which may be found at the root + * of the source tree for dist 4.0. + * + * $Log: scandir.C,v $ + * Revision 3.0.1.1 1994/01/24 13:58:45 ram + * patch16: created + * + */ + +#include "config.h" + +#ifdef I_STRING +#include +#else +#include +#endif + +#ifdef I_DIRENT +#include +#else +#ifdef I_SYS_NDIR +#include +#else +#ifdef I_SYS_DIR +#include +#endif +#endif +#endif + +#include "confmagic.h" /* Remove if not metaconfig -M */ + +#ifndef HAS_SCANDIR + +extern Malloc_t malloc(); +extern Malloc_t realloc(); + +extern DIR *opendir(); +extern Direntry_t *readdir(); + +#define DIR_NULL ((DIR *) 0) +#define ENTRY_NULL ((Direntry_t *) 0) + +static int alphasort _((Direntry_t **, Direntry_t **)); + +/* + * scandir + * + * This routine reads the directory `dirnam' and builds an array of + * pointers to directory entries using malloc(). The second parameter + * is the address of a pointer to an array of structure pointers. The + * third parameter is a pointer to a routine which is called with a + * pointer to a directory entry and should return a non zero value + * if the directory entry should be included in the arrary. If this + * pointer is NULL, then all the directory entries will be included. + * The last argument is a pointer to a routine which is passed to + * qsort() to sort the completed array. If this pointer is NULL, the + * array is not sorted. + * scandir() returns the number of entries in the array and a pointer + * to the array through the parameter namlist. + * alphasort() is a routine which sorts the array alphabetically. + */ +V_FUNC(int scandir, (dirnam, namelist, sel, comp), + char *dirnam /* Direcotry name */ NXT_ARG + Direntry_t ***namelist /* Pointer to an array of struct ptrs */ NXT_ARG + int (*sel)() /* Routine to select entries */ NXT_ARG + int (*comp)() /* Routine passed to qsort */) +{ + DIR *dirp; /* Returned by opendir() */ + Direntry_t *dp; /* Read entry */ + Direntry_t *dp_save; /* Place where entry is stored */ + Direntry_t **tmplist; /* Where the array list is stored */ + int nent = 0; /* Number of entries */ + + dirp = opendir(dirnam); + if (dirp == DIR_NULL) + return -1; /* Directory cannot be opened for reading */ + + for (dp = readdir(dirp); dp != ENTRY_NULL; dp = readdir(dirp)) { + if (sel == ((int (*)()) 0) || (*sel)(dp)) { + /* If entry has to be included */ + nent++; /* One more entry */ + + if (nent == 1) { /* Create array for first entry */ + tmplist = (Direntry_t **) + malloc(sizeof(Direntry_t *)); + if (tmplist == (Direntry_t **) 0) + return -1; /* Cannot create array */ + } else { /* Reallocate for a new entry */ + tmplist = (Direntry_t **) + realloc(tmplist, nent*sizeof(Direntry_t *)); + if (tmplist == (Direntry_t **) 0) + return -1; /* Cannot reallocate array */ + } + + dp_save = (Direntry_t *) malloc(sizeof(Direntry_t)); + if (dp_save == ENTRY_NULL) + return -1; /* No space to save entry */ + bcopy((char *) dp, (char *) dp_save, sizeof(Direntry_t)); + *(tmplist+(nent-1)) = dp_save; + } + } + + if (comp != ((int (*)()) 0) && nent) /* Need sorting ? */ + qsort(tmplist, nent, sizeof(Direntry_t *), comp); + + *namelist = tmplist; /* Passes the address of the arrray */ + closedir(dirp); /* Close directory */ + + return nent; /* Number of items */ +} + +P_FUNC(int alphasort, (d1, d2), + Direntry_t **d1 NXT_ARG Direntry_t **d2) +{ + return strcmp((*d1)->d_name, (*d2)->d_name); +} + +#endif + diff --git a/lib/C/fake/setsid.C b/lib/C/fake/setsid.C new file mode 100644 index 0000000..6811dec --- /dev/null +++ b/lib/C/fake/setsid.C @@ -0,0 +1,64 @@ +/* + * setsid.C -- A setsid replacement. + */ + +/* + * $Id: setsid.C,v 3.0.1.1 1994/01/24 13:58:47 ram Exp ram $ + * + * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi + * + * You may redistribute only under the terms of the Artistic Licence, + * as specified in the README file that comes with the distribution. + * You may reuse parts of this distribution only within the terms of + * that same Artistic Licence; a copy of which may be found at the root + * of the source tree for dist 4.0. + * + * $Log: setsid.C,v $ + * Revision 3.0.1.1 1994/01/24 13:58:47 ram + * patch16: created + * + */ + +#include "config.h" +#include "confmagic.h" /* Remove if not metaconfig -M */ + +#ifndef HAS_SETSID +/* + * setsid + * + * Set the process group ID and create a new session for the process. + * + * This is a pale imitation of the setsid() system call, since a session + * and a process group are two distinct things for the kernel. However, + * when setsid() is not available, the effects should be comparable. + */ +V_FUNC_VOID(int setsid) +{ + int error = 0; + +#ifdef HAS_SETPGID + /* + * setpgid() supersedes setpgrp() in OSF/1. + */ + error = setpgid(0 ,getpid()); +#else +#ifdef HAS_SETPGRP + /* + * Good old way to get a process group leader. + */ +#ifdef USE_BSDPGRP + error = setpgrp(0 ,getpid()); /* bsd way */ +#else + error = setpgrp(); /* usg way */ +#endif +#endif +#endif + + /* + * When none of the above is defined, do nothing. + */ + + return error; +} +#endif + diff --git a/lib/Jmakefile b/lib/Jmakefile new file mode 100644 index 0000000..a44f86a --- /dev/null +++ b/lib/Jmakefile @@ -0,0 +1,57 @@ +/* + * Jmakefile for lib subdirectory. + */ + +;# $Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:31 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.1 1994/01/24 13:43:31 ram +;# patch16: added new directory for C code sources +;# +;# Revision 3.0 1993/08/18 12:04:34 ram +;# Baseline for dist 3.0 netwide release. +;# + +FILES = errnolist.a errnolist.mk +FILES_SH = errnolist makedepend makedir + +INSTALLFLAGS = -m 444 + +all:: /* So that default make does not default to install */ + +>PRIVLIB /* Grrr.. Have to let jmake know I need this */ + +MakeDirectories(install,$(PRIVLIB)/lib) +InstallMultiple($(FILES),$(PRIVLIB)/lib) + +/* + * InstallSingleExt: + * This rule installs a single file whose basename is 'file' and + * extension is 'old' into 'file^^new'. This allows changing the + * dot extension of a file, for instance file.sh can be installed as + * file.SH. + */ +#define InstallSingleExt(step,file,dest,flags,old,new) @!\ +>INSTALL @!\ +>RM @!\ +step:: file^^old @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + (set -x; $(INSTALL) -c flags file^^old dest/file^^new) @@\ + @!\ +de^^step:: @@\ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ + (set -x; $(RM) dest/file^^new) + +#define install_rule \ + InstallSingleExt(install,!f,$(PRIVLIB)/lib,-m 444,.sh,.SH) + +Expand(install_rule,f!$(FILES_SH)!) +SetSubdirs(C) diff --git a/lib/Makefile.SH b/lib/Makefile.SH new file mode 100755 index 0000000..02e4528 --- /dev/null +++ b/lib/Makefile.SH @@ -0,0 +1,246 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] +: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=lib +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:31 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.1 1994/01/24 13:43:31 ram +# patch16: added new directory for C code sources +# +# Revision 3.0 1993/08/18 12:04:34 ram +# Baseline for dist 3.0 netwide release. +# + +FILES = errnolist.a errnolist.mk +FILES_SH = errnolist makedepend makedir + +INSTALLFLAGS = -m 444 + +all:: + +install:: + @for dir in $(PRIVLIB)/lib; do \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $$dir || $(INSTALLDIR) $$dir); \ + done + +install:: $(FILES) + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in $(FILES); do \ + (set -x; $(INSTALL) -c $(INSTALLFLAGS) $$i $(PRIVLIB)/lib); \ + done + +deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in $(FILES); do \ + (set -x; $(RM) $(PRIVLIB)/lib/$$i); \ + done + + +install:: errnolist.sh + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(INSTALL) -c -m 444 errnolist.sh $(PRIVLIB)/lib/errnolist.SH) + +deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(RM) $(PRIVLIB)/lib/errnolist.SH) + +install:: makedepend.sh + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(INSTALL) -c -m 444 makedepend.sh $(PRIVLIB)/lib/makedepend.SH) + +deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(RM) $(PRIVLIB)/lib/makedepend.SH) + +install:: makedir.sh + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(INSTALL) -c -m 444 makedir.sh $(PRIVLIB)/lib/makedir.SH) + +deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; $(RM) $(PRIVLIB)/lib/makedir.SH) + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: sub_clean local_clean +realclean: sub_realclean local_realclean +clobber: sub_clobber local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Rules for building in sub-directories -- do not edit + +subdirs: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS) ;\ + do \ + (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)); \ + done + +install:: + @$(MAKE) subdirs TARGET=install VERB="Installing" FLAGS= + +deinstall:: + @$(MAKE) subdirs TARGET=deinstall VERB="Deinstalling" FLAGS= + +install.man:: + @$(MAKE) subdirs TARGET=install.man VERB="Installing man pages" FLAGS= + +deinstall.man:: + @$(MAKE) subdirs TARGET=deinstall.man VERB="Deinstalling man pages" FLAGS= + +sub_clean:: + @$(MAKE) subdirs TARGET=clean VERB="Cleaning" FLAGS= + @echo "Back to $(CURRENT) for "clean... + +sub_realclean:: + @$(MAKE) subdirs TARGET=realclean VERB="Real cleaning" FLAGS= + @echo "Back to $(CURRENT) for "realclean... + +sub_clobber:: + @$(MAKE) subdirs TARGET=clobber VERB="Clobbering" FLAGS= + @echo "Back to $(CURRENT) for "clobber... + +tag:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS) ;\ + do \ + (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) tag); \ + done + +Makefiles:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS);\ + do \ + echo "Making "Makefiles" in $(DIR)$$i..."; \ + (cd $$i || exit 1; \ + if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ + $(MAKE) $(MFLAGS) Makefiles) \ + done + +Makefiles.SH:: Makefile.SH + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS);\ + do \ + case "$(DIR)$$i/" in \ + */*/*/*/) newtop=../../../..;; \ + */*/*/) newtop=../../..;; \ + */*/) newtop=../..;; \ + */) newtop=..;; \ + esac; \ + case "$(TOP)" in \ + /*) newtop="$(TOP)" ;; \ + esac; \ + echo "Making Makefiles.SH in $(DIR)$$i..."; \ + (cd $$i || exit 1; $(MAKE) $(MFLAGS) -f ../Makefile \ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i;\ + $(MAKE) $(MFLAGS) Makefiles.SH) \ + done + +all:: + @$(MAKE) subdirs TARGET=all VERB="Making all" FLAGS= + +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/lib/errnolist.a b/lib/errnolist.a new file mode 100644 index 0000000..7844b97 --- /dev/null +++ b/lib/errnolist.a @@ -0,0 +1,52 @@ +# $Id: errnolist.a,v 3.0 1993/08/18 12:04:35 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# Original Author: Harlan Stenn +# +# $Log: errnolist.a,v $ +# Revision 3.0 1993/08/18 12:04:35 ram +# Baseline for dist 3.0 netwide release. +# +# +# This is a simple-minded awk script to generate an initialization for +# sys_errnolist on systems that don't have it. +# This file now depends only on sys/errno.h error numbers under maxerr being +# in order. It will complain and die if not. NOTE: It will still produce +# a compilable output file, even with errors, so you must check the output. + + +BEGIN { + format = "\t\"%s\",\n" + printf("/*\n** This is a generated file. Do NOT edit it unless you really have to...\n*/\n\n") + printf("char *sys_errnolist[] = {\n") + maxerr = 89 + } + +$1=="#define" { + if(count > maxerr || substr($2,1,1) != "E") + next # we're not interested + if($3 < count) { # this is bad + printf("Fatal error: %s out of order at %s\n",\ + FILENAME, $2)>"/dev/tty" + exit 1 + } + # fill in the blanks + while($3 > count) { + dummy=sprintf("EDUMMY%d",count) + printf(format,dummy) + count++ + } + printf(format,$2) + count++ + } + +END { + printf("\t0\n};\n") + } diff --git a/lib/errnolist.mk b/lib/errnolist.mk new file mode 100644 index 0000000..e79a21b --- /dev/null +++ b/lib/errnolist.mk @@ -0,0 +1,42 @@ +# $Id: errnolist.mk,v 3.0.1.1 1994/01/24 13:59:32 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# Original Author: Harlan Stenn +# +# $Log: errnolist.mk,v $ +# Revision 3.0.1.1 1994/01/24 13:59:32 ram +# patch16: now uses modern shell metaconfig symbols +# +# Revision 3.0 1993/08/18 12:04:36 ram +# Baseline for dist 3.0 netwide release. +# +# +# Make rules for the errnolist stuff + +case "$errnolist" in +'') ;; +*) + $spitshell >>Makefile <>Makefile <>Makefile <<'!NO!SUBS!' + +foo: foo.o $(ERRNOLIST_OBJ) + $(CC) -o $@ foo.o $(ERRNOLIST_OBJ) +!NO!SUBS! diff --git a/lib/errnolist.sh b/lib/errnolist.sh new file mode 100644 index 0000000..6101db7 --- /dev/null +++ b/lib/errnolist.sh @@ -0,0 +1,44 @@ +# $Id: errnolist.sh,v 3.0.1.1 1994/01/24 14:00:00 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# Original Author: Harlan Stenn +# +# $Log: errnolist.sh,v $ +# Revision 3.0.1.1 1994/01/24 14:00:00 ram +# patch16: changed top ln-style config.sh lookup into test-style one +# +# Revision 3.0 1993/08/18 12:04:36 ram +# Baseline for dist 3.0 netwide release. +# + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +case "$errnolistc" in +'') ;; +*) + echo "Making $errnolistc ..." + awk -f errnolist.a < /usr/include/sys/errno.h > $errnolistc + echo "It would be a good idea to make sure that $errnolistc is correct." +esac + diff --git a/lib/makedepend.sh b/lib/makedepend.sh new file mode 100644 index 0000000..6ee561e --- /dev/null +++ b/lib/makedepend.sh @@ -0,0 +1,169 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting makedepend (with variable substitutions)" +$spitshell >makedepend < +# +# $Log: makedepend.sh,v $ +# Revision 3.0.1.1 1994/01/24 14:00:05 ram +# patch16: changed top ln-style config.sh lookup into test-style one +# +# Revision 3.0 1993/08/18 12:04:37 ram +# Baseline for dist 3.0 netwide release. +# + +export PATH || (echo "OOPS, this isn't sh. Desperation time. I will feed myself to sh."; sh \$0; kill \$\$) + +cat='$cat' +cppflags='$cppflags' +cp='$cp' +cpp='$cppstdin' +echo='$echo' +egrep='$egrep' +expr='$expr' +mv='$mv' +rm='$rm' +sed='$sed' +sort='$sort' +test='$test' +tr='$tr' +uniq='$uniq' +!GROK!THIS! + +$spitshell >>makedepend <<'!NO!SUBS!' + +$cat /dev/null >.deptmp +$rm -f *.c.c c/*.c.c +if test -f Makefile; then + mf=Makefile +else + mf=makefile +fi +if test -f $mf; then + defrule=`<$mf sed -n \ + -e '/^\.c\.o:.*;/{' \ + -e 's/\$\*\.c//' \ + -e 's/^[^;]*;[ ]*//p' \ + -e q \ + -e '}' \ + -e '/^\.c\.o: *$/{' \ + -e N \ + -e 's/\$\*\.c//' \ + -e 's/^.*\n[ ]*//p' \ + -e q \ + -e '}'` +fi +case "$defrule" in +'') defrule='$(CC) -c $(CFLAGS)' ;; +esac + +make clist || ($echo "Searching for .c files..."; \ + $echo *.c | $tr ' ' '\012' | $egrep -v '\*' >.clist) +gotnone=true +for file in `$cat .clist`; do +# for file in `cat /dev/null`; do + case "$file" in + *.c) filebase=`basename $file .c` ;; + *.y) filebase=`basename $file .c` ;; + '') continue ;; + esac + gotnone=false + $echo "Finding dependencies for $filebase.o." + $sed -n <$file >$file.c \ + -e "/^${filebase}_init(/q" \ + -e '/^#/{' \ + -e 's|/\*.*$||' \ + -e 's|\\$||' \ + -e p \ + -e '}' + $cpp -I/usr/local/include -I. $cppflags $file.c | \ + $sed \ + -e '/^# *[0-9]/!d' \ + -e 's/^.*"\(.*\)".*$/'$filebase'.o: \1/' \ + -e 's|: \./|: |' \ + -e 's|\.c\.c|.c|' | \ + $uniq | $sort | $uniq >> .deptmp +done + +$sed Makefile.new -e '1,/^# AUTOMATICALLY/!d' + +make shlist || ($echo "Searching for .SH files..."; \ + $echo *.SH | $tr ' ' '\012' | $egrep -v '\*' >.shlist) +if $gotnone || $test -s .deptmp; then + for file in `cat .shlist`; do + $echo `$expr X$file : 'X\(.*\).SH`: $file config.sh \; \ + /bin/sh $file >> .deptmp + done + $echo "Updating Makefile..." + $echo "# If this runs make out of memory, delete /usr/include lines." \ + >> Makefile.new + $sed 's|^\(.*\.o:\) *\(.*/.*\.c\) *$|\1 \2; '"$defrule \2|" .deptmp \ + >>Makefile.new +else + make hlist || ($echo "Searching for .h files..."; \ + $echo *.h | $tr ' ' '\012' | $egrep -v '\*' >.hlist) + $echo "You don't seem to have a proper C preprocessor. Using grep instead." + $egrep '^#include ' `cat .clist` `cat .hlist` >.deptmp + $echo "Updating Makefile..." + <.clist $sed -n \ + -e '/\//{' \ + -e 's|^\(.*\)/\(.*\)\.c|\2.o: \1/\2.c; '"$defrule \1/\2.c|p" \ + -e d \ + -e '}' \ + -e 's|^\(.*\)\.c|\1.o: \1.c|p' >> Makefile.new + <.hlist $sed -n 's|\(.*/\)\(.*\)|s= \2= \1\2=|p' >.hsed + <.deptmp $sed -n 's|c:#include "\(.*\)".*$|o: \1|p' | \ + $sed 's|^[^;]*/||' | \ + $sed -f .hsed >> Makefile.new + <.deptmp $sed -n 's|c:#include <\(.*\)>.*$|o: /usr/include/\1|p' \ + >> Makefile.new + <.deptmp $sed -n 's|h:#include "\(.*\)".*$|h: \1|p' | \ + $sed -f .hsed >> Makefile.new + <.deptmp $sed -n 's|h:#include <\(.*\)>.*$|h: /usr/include/\1|p' \ + >> Makefile.new + for file in `$cat .shlist`; do + $echo `$expr X$file : 'X\(.*\).SH`: $file config.sh \; \ + /bin/sh $file >> Makefile.new + done +fi +$rm -f Makefile.old +$cp Makefile Makefile.old +$cp Makefile.new Makefile +$rm Makefile.new +$echo "# WARNING: Put nothing here or make depend will gobble it up!" >> Makefile +$rm -f .deptmp `sed 's/\.c/.c.c/' .clist` .shlist .clist .hlist .hsed + +!NO!SUBS! +$eunicefix makedepend +chmod +x makedepend +case `pwd` in +*SH) + $rm -f ../makedepend + ln makedepend ../makedepend + ;; +esac diff --git a/lib/makedir.sh b/lib/makedir.sh new file mode 100644 index 0000000..2805714 --- /dev/null +++ b/lib/makedir.sh @@ -0,0 +1,86 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting makedir (with variable substitutions)" +$spitshell >makedir < +# +# $Log: makedir.sh,v $ +# Revision 3.0.1.1 1994/01/24 14:00:08 ram +# patch16: changed top ln-style config.sh lookup into test-style one +# +# Revision 3.0 1993/08/18 12:04:38 ram +# Baseline for dist 3.0 netwide release. +# + +export PATH || (echo "OOPS, this isn't sh. Desperation time. I will feed myself to sh."; sh \$0; kill \$\$) + +case \$# in + 0) + $echo "makedir pathname filenameflag" + exit 1 + ;; +esac + +: guarantee one slash before 1st component +case \$1 in + /*) ;; + *) set ./\$1 \$2 ;; +esac + +: strip last component if it is to be a filename +case X\$2 in + X1) set \`$echo \$1 | $sed 's:\(.*\)/[^/]*\$:\1:'\` ;; + *) set \$1 ;; +esac + +: return reasonable status if nothing to be created +if $test -d "\$1" ; then + exit 0 +fi + +list='' +while true ; do + case \$1 in + */*) + list="\$1 \$list" + set \`echo \$1 | $sed 's:\(.*\)/:\1 :'\` + ;; + *) + break + ;; + esac +done + +set \$list + +for dir do + $mkdir \$dir >/dev/null 2>&1 +done +!GROK!THIS! +$eunicefix makedir +chmod +x makedir diff --git a/mcon/INTRO b/mcon/INTRO new file mode 100644 index 0000000..51f4417 --- /dev/null +++ b/mcon/INTRO @@ -0,0 +1,109 @@ +This is a quick introduction to metaconfig. + +Metaconfig is a combination of a methodology and a program that will +help you write portable programs. It is well known that all UN*X +systems are not the same. Instead of writing lots of #ifdef/#endif for +each machine the program is ported on, it seems better to directly rely +on the actual possibilities of the system, without having to consider +whether it comes from HP or SUN. The idea is to write the program using +some symbols, known by a "unit", for all the hardware- or kernel- +specific parts of code. A metaconfig unit will automatically define the +symbol or not, depending on the system. Source files are scanned by +metaconfig and the necessary units are loaded and put into a shell +script called Configure. Running the Configure script will +automatically determine a suitable value for each symbol. + +How does a Configure script work ? It studies the environment it runs on +by extracting names in the C library, by compiling some small sample C +programs, and by asking questions when in doubt, always providing a +computed default answer. + +Here is a small example. + +It is said in the glossary of the symbols that RENAME is defined if the +rename routine is available to rename files. Without metaconfig, we +could write (for each occurrence of a "rename" in the code): + +#if defined(HP-UX-7.0) || defined(SUN) || defined(BSD) + rename(old, new); +#else + unlink(new); + link(old, new); + unlink(old); +#endif + +With the help of metaconfig, we shall write (once !): + +#ifndef HAS_RENAME +int rename(old, new) +char *old, *new; +{ + (void) unlink(new); + if (-1 != link(old, new)) + return unlink(old); + else + return -1; +} +#endif + + .... + + rename(old, new); + + +And that's all. The Configure script will check whether `rename' is +available on the target machine and accordingly define the RENAME +symbol. It is even more powerful that it may appear on a first glance, +because "rename" was not there on old SUNOS3 systems or HP-UX older than +6.5 (for series 800) and 7.0 (for series 300). You cannot rely on the +fact that the target machine has the latest OS release ! + +Another problem is to determine whether a C program should include +, or with KERNEL defined. With +metaconfig, you simply write: + +#ifdef I_TIME +# include +#endif +#ifdef I_SYS_TIME +# include +#endif +#ifdef I_SYS_TIME_KERNEL +# define KERNEL +# include +# undef KERNEL +#endif + +and the Configure script will generate a small C program, compile it, +and correctly define one of the three symbols I_TIME, I_SYS_TIME and +I_SYS_TIME_KERNEL. + +Another kind of precious information can be collected by a Configure +script. For instance, the symbol USE_STRUCT_COPY will be defined if the +C compiler can copy structures. It is up to the programmer to use this +information, of course. The symbol VOIDSIG will be defined if the +system declares "void (*signal())()" instead of "int (*signal())()". +Thus you can say: + +#ifdef VOIDSIG +extern void (*signal())(); +#else +extern int (*signal())(); +#endif + +and no suspicious warning will be emitted by the C compiler. + +Finally, Configure can help you in shell scripts or in makefile. By +using a file called Makefile.SH, which will be run through a shell to +produce a Makefile, you can use the variable substitution feature. The +variable $ranlib will be set to 'ranlib' or to ': ' (null statement) in +a makefile, which is useful for random libraries generation. Likewise, +the variable $bin will hold the full path for installing binaries (a +question will be issued by Configure). + +Needless to say, an initial amount of time must be spent before being +able to use metaconfig. The proper symbols must be known, and the +program must be prepared to deal with all the possible configurations. +But likewise, it will adapt itself to a greater number of systems +without any further source code modification. + diff --git a/mcon/Jmakefile b/mcon/Jmakefile new file mode 100644 index 0000000..559ba87 --- /dev/null +++ b/mcon/Jmakefile @@ -0,0 +1,93 @@ +/* + * Jmakefile for metaconfig + */ + +;# $Id: Jmakefile,v 3.0.1.4 1995/07/25 13:23:09 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.4 1995/07/25 13:23:09 ram +;# patch56: installs the GNU configure-like front-end to Configure +;# +;# Revision 3.0.1.3 1994/01/24 13:42:29 ram +;# patch16: added dependency generation stage +;# +;# Revision 3.0.1.2 1993/11/02 10:40:01 ram +;# patch14: now invokes perload explicitely via perl executable +;# +;# Revision 3.0.1.1 1993/08/25 08:46:44 ram +;# patch6: split unit installation to avoid shell command line overflow +;# +;# Revision 3.0 1993/08/18 12:04:40 ram +;# Baseline for dist 3.0 netwide release. +;# + +SetSubdirs(man) +AllTarget(Glossary) + +Glossary: makegloss + chmod +x makegloss + ./makegloss + +SimpleShellScriptTarget(makegloss) + +>PRIVLIB /* We need the privlib definition */ +>SCRIPTDIR /* As well as the script directory */ + +MakeInstallDirectories($(PRIVLIB) $(PRIVLIB)/U) +InstallNonExec(Glossary,$(PRIVLIB)) +InstallScript(makegloss,$(PRIVLIB)) +InstallScript(configure,$(PRIVLIB)) + +/* Split install list to avoid make overflow */ +InstallMultipleFlags(U/[a-d]*.U,$(PRIVLIB)/U,-m 444) +InstallMultipleFlags(U/[A-Ze-z]*.U,$(PRIVLIB)/U,-m 444) + +/* + * Build up dataloading versions of metalint, metaconfig and metaxref. + */ + +#define SimpleDataloadTarget(file,datafile) @!\ +++BIN datafile @!\ +AllTarget(datafile file) @!\ +SimpleShellScriptTarget(file) @!\ +datafile: file @@\ + perl $(TOP)/bin/perload -o file > $@ @@\ + chmod +rx $@ @!\ + @!\ +InstallScript(datafile,$(SCRIPTDIR)) + +SimpleDataloadTarget(mconfig,metaconfig) +SimpleDataloadTarget(mlint,metalint) +SimpleDataloadTarget(mxref,metaxref) + +BINFILES = \ +|expand f!$(BIN)! + !f:^meta=m \ +-expand \\ + +BINSH = \ +|expand f!$(BINFILES)! + !f.SH \ +-expand \\ + +>SED +>RM +>MKDEP + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(BINSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH new file mode 100755 index 0000000..cf4798e --- /dev/null +++ b/mcon/Makefile.SH @@ -0,0 +1,378 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL55] +: $X-Id: Jmake.tmpl,v 3.0.1.2 1995/01/11 14:50:21 ram Exp ram $ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=mcon +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.3 1995/03/21 08:35:28 ram Exp ram $ +######################################################################## +# Force 'make depend' to be performed first -- do not edit + +.FORCE_DEPEND:: + +all:: .FORCE_DEPEND + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.4 1995/07/25 13:23:09 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.4 1995/07/25 13:23:09 ram +# patch56: installs the GNU configure-like front-end to Configure +# +# Revision 3.0.1.3 1994/01/24 13:42:29 ram +# patch16: added dependency generation stage +# +# Revision 3.0.1.2 1993/11/02 10:40:01 ram +# patch14: now invokes perload explicitely via perl executable +# +# Revision 3.0.1.1 1993/08/25 08:46:44 ram +# patch6: split unit installation to avoid shell command line overflow +# +# Revision 3.0 1993/08/18 12:04:40 ram +# Baseline for dist 3.0 netwide release. +# + +all:: Glossary + +local_realclean:: + $(RM) Glossary + +Glossary: makegloss + chmod +x makegloss + ./makegloss + +all:: makegloss + +local_realclean:: + $(RM) makegloss + +makegloss: makegloss.SH + /bin/sh makegloss.SH + + +install:: + @for dir in $(PRIVLIB) $(PRIVLIB)/U; do \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $$dir || $(INSTALLDIR) $$dir); \ + done + +deinstall:: + $(RM) -r $(PRIVLIB) $(PRIVLIB)/U + +install:: Glossary + $(INSTALL) -c -m 444 Glossary $(PRIVLIB) + +deinstall:: + $(RM) $(PRIVLIB)/Glossary + +install:: makegloss + $(INSTALL) -c -m 555 makegloss $(PRIVLIB) + +deinstall:: + $(RM) $(PRIVLIB)/makegloss + +install:: configure + $(INSTALL) -c -m 555 configure $(PRIVLIB) + +deinstall:: + $(RM) $(PRIVLIB)/configure + +install:: U/[a-d]*.U + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in U/[a-d]*.U; do \ + (set -x; $(INSTALL) -c -m 444 $$i $(PRIVLIB)/U); \ + done + +deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in U/[a-d]*.U; do \ + (set -x; $(RM) $(PRIVLIB)/U/$$i); \ + done + +install:: U/[A-Ze-z]*.U + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in U/[A-Ze-z]*.U; do \ + (set -x; $(INSTALL) -c -m 444 $$i $(PRIVLIB)/U); \ + done + +deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in U/[A-Ze-z]*.U; do \ + (set -x; $(RM) $(PRIVLIB)/U/$$i); \ + done + +all:: metaconfig mconfig + +local_realclean:: + $(RM) metaconfig mconfig + +all:: mconfig + +local_realclean:: + $(RM) mconfig + +mconfig: mconfig.SH + /bin/sh mconfig.SH + +metaconfig: mconfig + perl $(TOP)/bin/perload -o mconfig > $@ + chmod +rx $@ + +install:: metaconfig + $(INSTALL) -c -m 555 metaconfig $(SCRIPTDIR) + +deinstall:: + $(RM) $(SCRIPTDIR)/metaconfig + +all:: metalint mlint + +local_realclean:: + $(RM) metalint mlint + +all:: mlint + +local_realclean:: + $(RM) mlint + +mlint: mlint.SH + /bin/sh mlint.SH + +metalint: mlint + perl $(TOP)/bin/perload -o mlint > $@ + chmod +rx $@ + +install:: metalint + $(INSTALL) -c -m 555 metalint $(SCRIPTDIR) + +deinstall:: + $(RM) $(SCRIPTDIR)/metalint + +all:: metaxref mxref + +local_realclean:: + $(RM) metaxref mxref + +all:: mxref + +local_realclean:: + $(RM) mxref + +mxref: mxref.SH + /bin/sh mxref.SH + +metaxref: mxref + perl $(TOP)/bin/perload -o mxref > $@ + chmod +rx $@ + +install:: metaxref + $(INSTALL) -c -m 555 metaxref $(SCRIPTDIR) + +deinstall:: + $(RM) $(SCRIPTDIR)/metaxref + +BINFILES = \ + mconfig \ + mlint \ + mxref + +BINSH = \ + mconfig.SH \ + mlint.SH \ + mxref.SH + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(BINSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: sub_clean local_clean +realclean: sub_realclean local_realclean +clobber: sub_clobber local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Rules for building in sub-directories -- do not edit + +subdirs: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS) ;\ + do \ + (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)); \ + done + +install:: + @$(MAKE) subdirs TARGET=install VERB="Installing" FLAGS= + +deinstall:: + @$(MAKE) subdirs TARGET=deinstall VERB="Deinstalling" FLAGS= + +install.man:: + @$(MAKE) subdirs TARGET=install.man VERB="Installing man pages" FLAGS= + +deinstall.man:: + @$(MAKE) subdirs TARGET=deinstall.man VERB="Deinstalling man pages" FLAGS= + +sub_clean:: + @$(MAKE) subdirs TARGET=clean VERB="Cleaning" FLAGS= + @echo "Back to $(CURRENT) for "clean... + +sub_realclean:: + @$(MAKE) subdirs TARGET=realclean VERB="Real cleaning" FLAGS= + @echo "Back to $(CURRENT) for "realclean... + +sub_clobber:: + @$(MAKE) subdirs TARGET=clobber VERB="Clobbering" FLAGS= + @echo "Back to $(CURRENT) for "clobber... + +tag:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS) ;\ + do \ + (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) tag); \ + done + +Makefiles:: + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS);\ + do \ + echo "Making "Makefiles" in $(DIR)$$i..."; \ + (cd $$i || exit 1; \ + if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ + $(MAKE) $(MFLAGS) Makefiles) \ + done + +Makefiles.SH:: Makefile.SH + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ + for i in $(SUBDIRS);\ + do \ + case "$(DIR)$$i/" in \ + */*/*/*/) newtop=../../../..;; \ + */*/*/) newtop=../../..;; \ + */*/) newtop=../..;; \ + */) newtop=..;; \ + esac; \ + case "$(TOP)" in \ + /*) newtop="$(TOP)" ;; \ + esac; \ + echo "Making Makefiles.SH in $(DIR)$$i..."; \ + (cd $$i || exit 1; $(MAKE) $(MFLAGS) -f ../Makefile \ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i;\ + $(MAKE) $(MFLAGS) Makefiles.SH) \ + done + +all:: + @$(MAKE) subdirs TARGET=all VERB="Making all" FLAGS= + +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/mcon/NOTES b/mcon/NOTES new file mode 100644 index 0000000..b6762e0 --- /dev/null +++ b/mcon/NOTES @@ -0,0 +1,174 @@ +This file shortly documents the built-in interpreter and other new +features from metaconfig. + +The notion of "conditional unit" has been added. In the ?MAKE: line, +each unit whose name begins with a "+" will not be loaded in the +Configure script unless its exact value is a mandatory. The default +value specified in ?DEF: will be used instead. If no ?DEF: line is +found, then the symbol is initialized with a null default value. + +In the config.h.SH file, only the necessary symbols are loaded. Note +that the format in ?H: line has changed. It is no longer necessary to +write ?H:?%1: to get a line included in config.h. First of all, the %1 +symbol is not defined any more. Secondly, the unit's name is now %< and +it does not matter whether the name appears first in the ?MAKE: line or +not. Lastly, metaconfig can guess for itself whether to include a +symbol or not. + +Sometimes, it is necessary to force a given value, because metaconfig is +not smart enough to guess 100% of the time. See voidflags.U for an +example (look at the ?C: and ?H: lines and read the comments). + +The Myread.U unit changed. It is now able to do variable substitutions, +and it sets the prompt correctly if there is no supplied default. Thus, +instead of the old: + + dflt=y + rp="Question? [$dflt]" + $echo $n "$rp $c" + . myread + +you must now write: + + dflt=y + rp='Question?' + . myread + +and 'myread' will take care of echoing the question with the default +put in square brakets. + +Likewise, question asking for filenames or pathnames may now use the Getfile.U +unit to take care of all the burden. The presetting is the same as for myread +and the answer is finally held in $ans. But the variable $fn must be set to +indicate the type of file and enable/disable some of the sanity checks. See +leading comments in Getfile.U. Here is a simple example to locate the active +file: + + dflt='~news/lib' + fn='l~:active' + rp='Where is the active file?' + . getfile + active="$ans" + +The user may answer the question by using ~substitution and giving only the +directory where the active file is located (in which case getfile will try +to locate a file named 'active' in that directory). A full path may also be +given of course, if the basename of the file is not 'active'. + +The units are now filtered by a built-in interpreter before getting +loaded in Configure. That way, a Configure script can be more or less +tuned. See d_gethname.U for a complex example. + +All the interpreter commands start with a leading '@'. Possible +commands include: + +o if/elsif/else/end is the traditional conditional construct. +o define tells metaconfig the is to be defined. + +Expressions in conditional constructs can include the &&, || and ! +operator with same meaning as in the shell. Backslash at the end of a +line stands for the continuation character. All the symbols in the +expression stands for themselves, and their value is true if they are +defined/wanted and false otherwise. + +It is possible to include shell and perl test. All the text enclosed in +single brackets as {} is expanded in a shell as + + if >/dev/null 2>&1; then exit 0; else exit 1; fi + +whereas text in double brackets as {{}} is expanded in perl as + + if ( {exit 0;} else {exit 1;} + +and the exit status is used in the standard way to get a boolean value +(i.e 0 is true and everything else is false). See Oldconfig.U for an +example. + +Metaconfig's interpreter has standard C operator priority, but you may +force the evaluation order with parenthesis. A simple error recovery +attempt is made, so that you should get meaningful error messages. + +The simple test ?sym: means "keep the remaining of the line iff the +symbol is defined" and %sym: is the same for non-definedness. + +Some special symbols may be put in a unit and will get expanded, +provided the ?MAKE: command line is 'wipe' and not 'add'. Here are the +available symbols: + + is the name $package as found in .package + is the $maintloc variable as found in .pakcage + is metaconfig's version number + is metaconfig's patchlevel + is the current frozen date as given by `date` + +A 'wipe'ed unit is passed through the interpreter too. + +It is also possible to declare a symbol obsolete. A warning message +will be issued if the symbol is used and the Glossary mentions it. +the "Obsolete" clause. The syntax is: + + ?C:symbol (obsolete list): + ?S:symbol (obsolete list): + +If metaconfig is used with the -o option, it will generate code to remap +those old symbols to the new ones, so the old code does not have to be changed +right away. If you do not use -o, the Obsolete file will still be generated +to warn you about obsolete symbols but no maping will be done. + +The new ?W: line can be use to tie up the destiny of some symbols. The syntax +is: + + ?W:shell symbols list:C symbol list + +and the symbols in the shell list will be defined if one of the C symbols is. +For instance, unit d_const.U uses the following: + + ?W:%<:const + +so that any 'const' usage in the C code will have %< (the unit name) handled +as a wanted symbol. In particular, this has the interesting side effect of +loading the unit into Configure when the 'const' keyword is used. + +This shell symbol list part may be left empty. For example unit i_time.U uses: + + ?W::timezone + +for its side effect: the symbol 'timezone' may now be part of the interpreter +tests to conditionally load some code into Configure when struct timezone is +used. + +C symbol aliasing can be used to let metaconfig know that the symbol comment +is to be loaded in config_h.SH even when the main symbol is not used in C. +For instance, d_const.U writes: + + ?C:HASCONST ~ %<: + +so that the HASCONST hype is loaded iff the unit (%<) is wanted. This is why +the ?H: lines are also explicitely tied to the wanted-ness of the d_const +symbol, by writing: + + ?H:?%<:#$d_const HASCONST /**/ + ?H:?%<:#ifndef HASCONST + ?H:?%<:#define const + ?H:?%<:#endif + ?H:. + +because we want all those lines to appear in config_h.SH as soon as the d_const +unit is loaded into Configure. + +Because of the new -s (silent) option of Configure, the important messages which +are to appear even in silent mode must be written on file descriptor #4. Others +will simply not be echoed under -s. Note that all the questions and default +answers are written on #4. You should write: + + echo " " + echo "Checking to see if......" >&4 + ..... + echo "Yes, it does" + +which will have the traditional behaviour unless -s is used, in which case only +the line + + Checking to see if..... + +will echo on the terminal. diff --git a/mcon/README b/mcon/README new file mode 100644 index 0000000..0a6b26e --- /dev/null +++ b/mcon/README @@ -0,0 +1,24 @@ +This is the root directory for metaconfig. + +If you are new to metaconfig, you may wish to have a look at the INTRO +file, which gives a quick introduction. + +The metaconfig you have here is a modified version of Larry Wall's 2.0 +release. The units themselves have been ripped off from some Configure +scripts (perl 4.0, elm 2.3). They all carry a copyright from me, which +is not true, but it was automatically produced and I had no time yet to +set the proper copyrights for each unit. + +Although metaconfig, as being part of dist, is covered by the Artistic +License, a Configure script is not copyrighted and belongs to the +public domain. Units can be copyrighted, and credits for each unit may +appear in the generated Configure script, at the author's request. + +The manual page for metaconfig is not up-to-date. The built-in +interpreter and the changes are documented in NOTES. + +The units that come from dist 2.0 need to be changed. A script should be +provided in the final release to do an automatic conversion, which will +be fine 90% of the time. If you want to see how new features can be used, +I would recommend you to have a look at Oldconfig.U, d_gethname.U and +voidflags.U. diff --git a/mcon/U/AAAAA.U b/mcon/U/AAAAA.U new file mode 100644 index 0000000..b2f6211 --- /dev/null +++ b/mcon/U/AAAAA.U @@ -0,0 +1,46 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: AAAAA.U,v $ +?RCS: Revision 3.0.1.4 1994/06/20 06:50:26 ram +?RCS: patch30: changes from Jarkko Hietaniemi are tagged with JHI +?RCS: +?RCS: Revision 3.0.1.3 1994/05/06 14:01:39 ram +?RCS: patch23: initials for Wayne Davison are now WED +?RCS: patch23: added initials for new unit contributor Andy Dougherty +?RCS: +?RCS: Revision 3.0.1.2 1994/01/24 14:01:09 ram +?RCS: patch16: make metalint shut up on special unit definition for All target +?RCS: +?RCS: Revision 3.0.1.1 1993/09/13 15:43:57 ram +?RCS: patch10: documents initials used for Wayne Davison's contributions +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:44 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: The purpose of this file is to supply the head of the Makefile created +?X: by metaconfig. For this reason it must be first in alphabetical order. +?X: The leading '+' in front of the unit name is a hint for metalint, since +?X: the use of that special unit name as a "made" unit is legitimate here. +?X: +?MAKE:+All: Finish +?X: +?X: Throughout the units, the following initials are used to identify comments: +?X: +?X: HMS: Harlan Stenn +?X: RAM: Raphael Manfredi +?X: WED: Wayne Davison (was WAD by mistake--RAM) +?X: ADO: Andy Dougherty +?X: JHI: Jarkko Hietaniemi +?X: +?X: Agreed, this is a weird place to document it, but I couldn't find a better +?X: place to do so. I've bet on the curiosity of users, who would probably +?X: want to know what's in this strangely-named file--RAM. diff --git a/mcon/U/Begin.U b/mcon/U/Begin.U new file mode 100644 index 0000000..c05d239 --- /dev/null +++ b/mcon/U/Begin.U @@ -0,0 +1,39 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Begin.U,v $ +?RCS: Revision 3.0.1.3 1997/02/28 14:56:35 ram +?RCS: patch61: added Extractall dependency +?RCS: +?RCS: Revision 3.0.1.2 1995/01/30 14:25:08 ram +?RCS: patch49: avoid an empty rmlist: systems might choke on it (WED) +?RCS: +?RCS: Revision 3.0.1.1 1994/10/31 09:32:20 ram +?RCS: patch44: created +?RCS: +?X: +?X: This file comes after option processing had been done and after all +?X: the default values have been set up. It marks the beginning of questions. +?X: It is important that Options be listed *after* Myinit to ensure that the +?X: default initializations performed by Init and Myinit will not clobber +?X: any setting done on the command line via -D or -U. +?X: +?MAKE:Begin: Myinit Options package Extractall +?MAKE: -pick add $@ %< +: Eunice requires " " instead of "", can you believe it +echo " " +: Here we go... +echo "Beginning of configuration questions for $package." + +?X: Make sure the rm below is given a non-empty list for some systems. +?X: This is run only when within the UU directory, hence we can safely +?X: attempt to rm a non-existent 'X' file... +trap 'echo " "; test -d ../UU && rm -rf X $rmlist; exit 1' 1 2 3 15 + diff --git a/mcon/U/Checkcc.U b/mcon/U/Checkcc.U new file mode 100644 index 0000000..ac1b513 --- /dev/null +++ b/mcon/U/Checkcc.U @@ -0,0 +1,135 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Copyright (c) 2000, Jarkko Hietaniemi +?RCS: +?X: +?X: This unit produces a bit of shell code that must be dotted in order +?X: to make quick check on whether the current C compiler is working. +?X: +?MAKE:Checkcc ccname ccversion: Myread Warn startsh cat contains test +?MAKE: -pick add $@ %< +?S:ccname: +?S: This can set either by hints files or by Configure. If using +?S: gcc, this is gcc, and if not, usually equal to cc, unimpressive, no? +?S: Some platforms, however, make good use of this by storing the +?S: flavor of the C compiler being used here. For example if using +?S: the Sun WorkShop suite, ccname will be 'workshop'. +?S:. +?S:ccversion: +?S: This can set either by hints files or by Configure. If using +?S: a (non-gcc) vendor cc, this variable may contain a version for +?S: the compiler. +?S:. +?F:./checkcc ./trygcc !checktmp +?V:despair +?T:trygcc +?LINT:extern cc rm ccflags ldflags +?LINT:change cc ccflags +?LINT:usefile checktmp +?INIT:ccname='' +?INIT:ccversion='' +: generate the trygcc script for later perusal +cat <trygcc +$startsh +EOS +cat <<'EOSC' >>trygcc +case "$cc" in +'') ;; +*) $rm -f try try.* + $cat >try.c <&4 + despair=yes + trygcc=yes + case "$cc" in + *gcc*) trygcc=no ;; + esac + case "`$cc -v -c try.c 2>&1`" in + *gcc*) trygcc=no ;; + esac + if $test X"$trygcc" = Xyes; then + if gcc -o try -c try.c; then + echo " " + echo "You seem to have a working gcc, though." >&4 + rp="Would you like to use it?" + dflt=y + if $test -f myread; then + . ./myread + else + if $test -f UU/myread; then + . ./UU/myread + else + echo "Cannot find myread, sorry. Aborting." >&2 + exit 1 + fi + fi + case "$ans" in + [yY]*) cc=gcc; ccname=gcc; ccflags=''; despair=no; +?X: Look whether we have 'call-back units' generated by hints that would +?X: seemingly affect the compiling environment. + $cat *.cbu >checktmp 2>/dev/null + if $contains ccflags checktmp >/dev/null; then + ./warn <checkcc +$startsh +EOS +cat <<'EOSC' >>checkcc +case "$cc" in +'') ;; +*) $rm -f try try.* + $cat >try.c <&4 + fi + $cat >&4 <&4 +?X: +?X: Files spelled uppercased and beginning with PACK are produced by the +?X: shell archive builder and may be removed by the user. Usually, they are +?X: not listed in the MANIFEST file, but you never know... +?X: +?X: "split -l" is the new way of running a split, but we also try the older way +?X: + awk '$1 !~ /PACK[A-Z]+/ {print $1}' "$rsrc/MANIFEST" | \ + (split -l 50 2>/dev/null || split -50) + rm -f missing + tmppwd=`pwd` + for filelist in x??; do + (cd "$rsrc"; ls `cat "$tmppwd/$filelist"` \ + >/dev/null 2>>"$tmppwd/missing") + done + if test -s missing; then + cat missing >&4 + cat >&4 <<'EOM' + +THIS PACKAGE SEEMS TO BE INCOMPLETE. + +You have the option of continuing the configuration process, despite the +distinct possibility that your kit is damaged, by typing 'y'es. If you +do, don't blame me if something goes wrong. I advise you to type 'n'o +and contact the author (). + +EOM +?X: Can't use $echo at this early stage + echo $n "Continue? [n] $c" >&4 + read ans + case "$ans" in + y*) + echo "Continuing..." >&4 + rm -f missing + ;; + *) +?X: +?X: Use kill and not exit, so that the trap gets executed to clean up +?X: + echo "ABORTING..." >&4 + kill $$ + ;; + esac + else + echo "Looks good..." + fi +else + echo "There is no MANIFEST file. I hope your kit is complete !" +fi +rm -f missing x?? + +@end diff --git a/mcon/U/Chk_whoami.U b/mcon/U/Chk_whoami.U new file mode 100644 index 0000000..a18ae1d --- /dev/null +++ b/mcon/U/Chk_whoami.U @@ -0,0 +1,25 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Chk_whoami.U,v $ +?RCS: Revision 3.0 1993/08/18 12:04:46 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit makes sure we don't try to include whoami.h if uname() exists. +?X: +?MAKE:Chk_whoami: d_uname i_whoami +?MAKE: -pick add $@ %< +?LINT:change i_whoami +: weed out incompatibilities +case "$d_uname" in + "$define") i_whoami="$undef" ;; +esac + diff --git a/mcon/U/Compile.U b/mcon/U/Compile.U new file mode 100644 index 0000000..a8af2e0 --- /dev/null +++ b/mcon/U/Compile.U @@ -0,0 +1,63 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Copyright (c) 1998 Andy Dougherty +?RCS: +?RCS: You may distribute under the terms of either the GNU General Public +?RCS: License or the Artistic License, as specified in the README file. +?RCS: +?RCS: +?X: +?X: This unit is just a quick shorthand for the compile command +?X: to be used in all the other metaconfig units. +?X: +?MAKE:Compile: +cc +optimize +ccflags +ldflags +libs +?MAKE: -pick add $@ %< +?LINT:define compile compile_ok +?V:compile compile_ok mc_file +?S:compile: +?S: This shell variable is used internally by Configure to provide +?S: a convenient shorthand for the typical compile command, namely +?S: $cc $optimize $ccflags $ldflags -o $1 $1.c $libs > /dev/null 2>&1 +?S: Note that the output filename does _not_ include the _exe +?S: extension. Instead we assume that the linker will be +?S: "helpful" and automatically appending the correct suffix. +?S: OS/2 users will apparently need to supply the -Zexe flag to +?S: get this behavior. +?S: +?S: To use this variable, say something like: +?S: echo 'int main() { exit(0); }' > try.c +?S: set try +?S: if eval $compile; then +?S: echo "success" # and do whatever . . . +?S: else +?S: echo "failure" # and do whatever . . . +?S: fi +?S: To add extra flags cc flags (e.g. -DWHATEVER) just put them +?S: in $*, e.g. +?S: set try -DTRY_THIS_FLAG +?S:. +?S:compile_ok: +?S: This shell variable is used internally by Configure to provide +?S: a convenient shorthand for the typical compile command that you +?S: expect to work ok. It is the same as $compile, except we +?S: deliberately let the user see any error messages. +?S:. +: define a shorthand compile call +compile=' +mc_file=$1; +shift; +$cc -o ${mc_file} $optimize $ccflags $ldflags $* ${mc_file}.c $libs > /dev/null 2>&1;' +: define a shorthand compile call for compilations that should be ok. +compile_ok=' +mc_file=$1; +shift; +$cc -o ${mc_file} $optimize $ccflags $ldflags $* ${mc_file}.c $libs;' + diff --git a/mcon/U/Config_h.U b/mcon/U/Config_h.U new file mode 100644 index 0000000..04336c2 --- /dev/null +++ b/mcon/U/Config_h.U @@ -0,0 +1,114 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Config_h.U,v $ +?RCS: Revision 3.0.1.5 1997/02/28 14:57:43 ram +?RCS: patch61: added support for src.U +?RCS: +?RCS: Revision 3.0.1.4 1995/09/25 09:10:49 ram +?RCS: patch59: commented the purpose of the #un-def directive +?RCS: +?RCS: Revision 3.0.1.3 1995/01/30 14:25:39 ram +?RCS: patch49: typo fixes in leading config.h comment (WED) +?RCS: +?RCS: Revision 3.0.1.2 1993/08/24 12:13:20 ram +?RCS: patch3: added TOP as a local shell temporary variable +?RCS: +?RCS: Revision 3.0.1.1 1993/08/19 06:42:20 ram +?RCS: patch1: leading config.sh searching was not aborting properly +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:47 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This file ends up producing the config_h.SH script, which is run to produce +?X: the config.h file. The file ./.Config_h below contains all the ?H: lines +?X: extracted out of all the units. Metaconfig itself adds the !GROK!THIS!. +?X: Note that this code isn't included into Configure, but must be shipped with. +?X: +?X: For those who wish to know why the file is config_h.SH instead of the more +?X: natural config.h.SH, well... it is to support systems like MS-DOG. Only one +?X: 'dot' is allowed within the file name, as it is part of the "extension" of +?X: the file. MS-DOG will not let you have two 'dots' because that would mean +?X: two "extensions". +?X: +?MAKE:Config_h: Id End Config_sh Obsol_h myuname cf_time cf_by package src +?MAKE: -pick c_h_weed $@ %< +?MAKE: -pick c_h_weed $@ ./Config_h +?MAKE: -pick c_h_weed $@ ./Obsol_h +?T:CONFIG TOP +?LINT:unclosed !GROK!THIS! +?LINT:extern CONFIG_H CONFIG_SH +?LINT:change CONFIG_H CONFIG_SH +?LINT:nocomment +case "$CONFIG_SH" in +'') CONFIG_SH=config.sh;; +esac +case "$CONFIG_H" in +'') CONFIG_H=config.h;; +esac +case $CONFIG in +'') + if test -f $CONFIG_SH; then TOP=.; + elif test -f ../$CONFIG_SH; then TOP=..; + elif test -f ../../$CONFIG_SH; then TOP=../..; + elif test -f ../../../$CONFIG_SH; then TOP=../../..; + elif test -f ../../../../$CONFIG_SH; then TOP=../../../..; + else + echo "Can't find $CONFIG_SH."; exit 1 + fi + . $TOP/$CONFIG_SH + ;; +esac +?X: Make sure we are in the directory where the .SH file is located. +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting $CONFIG_H (with variable substitutions)" +?X: +?X: Since we unconditionally translate leading #undef into /*#define, we're +?X: stuck when we really want to have a #undef in config.h. That's why there +?X: is provision here for #un-def, which is translated back into #undef after +?X: all original #undef have been processed. +?X: +?X: Previously, we changed all +?X: #undef FOO /**/ +?X: into +?X: /*#define FOO /**/ +?X: The xlc compiler (available on IBM's AIX) complains that this is +?X: an illegal attempt to write a nested comment, and warns against it. +?X: There's apparently no way to shut the compiler up, either. +?X: This sed command from Hallvard B Furuseth +?X: changes it to +?X: /*#define FOO / **/ +sed <$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-def!#undef!' +/* + * This file was produced by running the config_h.SH script, which + * gets its values from $CONFIG_SH, which is generally produced by + * running Configure. + * + * Feel free to modify any of this as the need arises. Note, however, + * that running config_h.SH again will wipe out any changes you've made. + * For a more permanent change edit $CONFIG_SH and rerun config_h.SH. + * + * \$Id$ + */ + +/* + * Package name : $package + * Source directory : $src + * Configuration time: $cf_time + * Configured by : $cf_by + * Target system : $myuname + */ + +#ifndef _config_h_ +#define _config_h_ + diff --git a/mcon/U/Config_sh.U b/mcon/U/Config_sh.U new file mode 100644 index 0000000..3d71a2e --- /dev/null +++ b/mcon/U/Config_sh.U @@ -0,0 +1,110 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Config_sh.U,v $ +?RCS: Revision 3.0.1.3 1997/02/28 14:57:53 ram +?RCS: patch61: added support for src.U +?RCS: +?RCS: Revision 3.0.1.2 1995/01/11 14:53:31 ram +?RCS: patch45: moved path stripping from d_portable.U to end of Configure +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 15:50:37 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:48 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit ends up producing the config.sh script, which contains all the +?X: definitions figured out by Configure. The add.Config_sh command knows +?X: which variables need to be remembered. It also adds the EOT (ends the +?X: here document redirection with variable substitution). +?X: +?MAKE:Config_sh: cf_time cf_by test spitshell startsh myuname Myread \ + End Obsol_sh Loc +d_portable package src cat sed +?MAKE: -pick add.Config_sh $@ %< +?MAKE: -pick add $@ ./Obsol_sh +?MAKE: -pick close.Config_sh $@ %< +?F:!config.over !config.arch +?T:file sfile xsed +?LINT:unclosed EOT +: back to where it started +if test -d ../UU; then + cd .. +fi + +: configuration may be unconditionally patched via a 'config.arch' file +if $test -f config.arch; then + echo "I see a config.arch file, loading it." >&4 + . ./config.arch +fi + +: configuration may be patched via a 'config.over' file +if $test -f config.over; then + echo " " + dflt=y + rp='I see a config.over file. Do you wish to load it?' + . UU/myread + case "$ans" in + n*) echo "OK, I'll ignore it.";; + *) . ./config.over + echo "Configuration override changes have been loaded." + ;; + esac +fi + +@if d_portable +: in case they want portability, strip down executable paths +?X: +?X: Strip down paths in located executables. For each file, e.g. vi, there +?X: is a $vi variable whose value is for instance '/usr/bin/vi'. By resetting +?X: $vi to 'vi', we rely on the PATH variable to locate the executable... +?X: In order to allow vi='/usr/bin/nvi' which will strip down to vi='nvi', +?X: we can't just say 'eval $file="\$file"', we have to recourse to sed. +?X: We don't use basename since it is less portable than sed. +?X: +case "$d_portable" in +"$define") + echo " " + echo "Stripping down executable paths..." >&4 + xsed=$sed + for file in $loclist $trylist; do + eval sfile="\$$file" + sfile=`echo $sfile | $xsed -e 's,.*/\(.*\),\1,'` + eval $file="$sfile" + done + ;; +esac + +@end +: create config.sh file +echo " " +echo "Creating config.sh..." >&4 +$spitshell <config.sh +$startsh +# +# This file was produced by running the Configure script. It holds all the +# definitions figured out by Configure. Should you modify one of these values, +# do not forget to propagate your changes by running "Configure -der". You may +# instead choose to run each of the .SH files by yourself, or "Configure -S". +# + +# Package name : $package +# Source directory : $src +# Configuration time: $cf_time +# Configured by : $cf_by +# Target system : $myuname + +EOT +?X: Command line options are saved by the Options.U unit in the +?X: temporary file UU/cmdline.opt +$test -f UU/cmdline.opt && $cat UU/cmdline.opt >> config.sh +$spitshell <>config.sh + diff --git a/mcon/U/Configdir.U b/mcon/U/Configdir.U new file mode 100644 index 0000000..1dfcf70 --- /dev/null +++ b/mcon/U/Configdir.U @@ -0,0 +1,28 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Configdir.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 14:58:36 ram +?RCS: patch61: have README explicitely mention the package name +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:49 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:Configdir: package +?MAKE: -pick add $@ %< +: create .config dir to save info across Configure sessions +test -d ../.config || mkdir ../.config +cat >../.config/README <&4 +?X: +?X: The symbol list is in alpha order for ease of maintenance... +?X: +?X: Lots of new symbols (mostly rummaged from gcc), courtesy of +?X: Jarkko Hietaniemi -- RAM, 06/06/94 +?X: +?X: If your symbol is mixed case, just add it as-is. +?X: All symbols will be transformed to both all-lower and all-upper. +?X: Also drop any leading/trailing underscores, the scan will try all those. +?X: +$cat <<'EOSH' > Cppsym.know +a29k ABI64 aegis AES_SOURCE AIX AIX32 AIX370 +AIX41 AIX42 AIX43 AIX_SOURCE aixpc ALL_SOURCE +alliant alpha am29000 AM29000 AMD64 amiga AMIGAOS AMIX +ansi ANSI_C_SOURCE apollo ardent ARM32 atarist att386 att3b +BeOS BIG_ENDIAN BIT_MSF bsd BSD bsd43 bsd4_2 bsd4_3 BSD4_3 bsd4_4 +BSD_4_3 BSD_4_4 BSD_NET2 BSD_TIME BSD_TYPES BSDCOMPAT bsdi +bull c cadmus clipper CMU COFF COMPILER_VERSION +concurrent convex cpu cray CRAY CRAYMPP ctix CX_UX +CYGWIN DGUX DGUX_SOURCE DJGPP dmert DOLPHIN DPX2 DSO +Dynix DynixPTX ELF encore EPI EXTENSIONS FAVOR_BSD +FILE_OFFSET_BITS FreeBSD GCC_NEW_VARARGS gcos gcx gimpel +GLIBC GLIBC_MINOR +GNU_SOURCE GNUC GNUC_MINOR GNU_LIBRARY GO32 gould GOULD_PN +H3050R H3050RX hbullx20 hcx host_mips +hp200 hp300 hp700 HP700 hp800 hp9000 +hp9000s200 hp9000s300 hp9000s400 hp9000s500 +hp9000s700 hp9000s800 hp9k8 hp_osf hppa hpux HPUX_SOURCE +i186 i286 i386 i486 i586 i686 i8086 i80960 i860 I960 +IA64 iAPX286 ibm ibm032 ibmesa IBMR2 ibmrt ILP32 ILP64 +INLINE_INTRINSICS INTRINSICS INT64 interdata is68k ksr1 +LANGUAGE_C LARGE_FILE_API LARGEFILE64_SOURCE +LARGEFILE_SOURCE LFS64_LARGEFILE LFS_LARGEFILE +Linux LITTLE_ENDIAN LONG64 LONG_DOUBLE LONG_LONG +LONGDOUBLE LONGLONG LP64 luna luna88k Lynx +M68000 m68k m88100 m88k M88KBCS_TARGET M_COFF +M_I186 M_I286 M_I386 M_I8086 M_I86 M_I86SM M_SYS3 +M_SYS5 M_SYSIII M_SYSV M_UNIX M_XENIX MACH machine MachTen +MATH_HAS_NO_SIDE_EFFECTS +mc300 mc500 mc68000 mc68010 mc68020 mc68030 mc68040 +mc68060 mc68k mc68k32 mc700 mc88000 mc88100 merlin +mert MiNT mips MIPS_FPSET MIPS_ISA MIPS_SIM MIPS_SZINT +MIPS_SZLONG MIPS_SZPTR MIPSEB MIPSEL MODERN_C motorola +mpeix MSDOS MTXINU MULTIMAX mvs MVS n16 ncl_el ncl_mr +NetBSD news1500 news1700 news1800 news1900 news3700 +news700 news800 news900 NeXT NLS nonstopux ns16000 ns32000 +ns32016 ns32332 ns32k nsc32000 +OCS88 OEMVS OpenBSD os OS2 OS390 osf OSF1 OSF_SOURCE +pa_risc PA_RISC1_1 PA_RISC2_0 PARAGON parisc +pc532 pdp11 PGC PIC plexus PORTAR posix +POSIX1B_SOURCE POSIX2_SOURCE POSIX4_SOURCE +POSIX_C_SOURCE POSIX_SOURCE POWER +PROTOTYPES PWB pyr QNX R3000 REENTRANT RES Rhapsody RISC6000 +riscix riscos RT S390 SA110 scs SCO sequent sgi SGI_SOURCE SH3 sinix +SIZE_INT SIZE_LONG SIZE_PTR SOCKET_SOURCE SOCKETS_SOURCE +sony sony_news sonyrisc sparc sparclite spectrum +stardent stdc STDC_EXT stratos sun sun3 sun386 +Sun386i svr3 svr4 SVR4_2 SVR4_SOURCE svr5 +SX system SYSTYPE_BSD SYSTYPE_BSD43 SYSTYPE_BSD44 +SYSTYPE_SVR4 SYSTYPE_SVR5 SYSTYPE_SYSV SYSV SYSV3 SYSV4 SYSV5 +sysV68 sysV88 Tek4132 Tek4300 titan +TM3200 TM5400 TM5600 +tower tower32 tower32_200 tower32_600 tower32_700 +tower32_800 tower32_850 tss +u370 u3b u3b2 u3b20 u3b200 u3b20d u3b5 +ultrix UMAXV UnicomPBB UnicomPBD UNICOS UNICOSMK +unix UNIX95 UNIX99 unixpc unos +USE_BSD USE_FILE_OFFSET64 USE_GNU USE_ISOC9X USE_LARGEFILE USE_LARGEFILE64 +USE_MISC USE_POSIX USE_POSIX199309 USE_POSIX199506 USE_POSIX2 +USE_REENTRANT USE_SVID USE_UNIX98 USE_XOPEN USE_XOPEN_EXTENDED +USGr4 USGr4_2 +Utek UTek UTS UWIN uxpm uxps vax venix VMESA vms xenix Xenix286 +XOPEN_SOURCE XOPEN_SOURCE_EXTENDED XPG2 XPG2_EXTENDED +XPG3 XPG3_EXTENDED XPG4 XPG4_EXTENDED +z8000 +EOSH +?X: Maybe put other stuff here too. +cat <>Cppsym.know +$osname +EOSH +./tr '[a-z]' '[A-Z]' < Cppsym.know > Cppsym.a +./tr '[A-Z]' '[a-z]' < Cppsym.know > Cppsym.b +$cat Cppsym.know > Cppsym.c +$cat Cppsym.a Cppsym.b Cppsym.c | $tr ' ' $trnl | $sort | $uniq > Cppsym.know +$rm -f Cppsym.a Cppsym.b Cppsym.c +cat < Cppsym +$startsh +if $test \$# -gt 0; then + echo \$* | $tr " " "$trnl" | ./Cppsym.try > Cppsym.got + if $test -s Cppsym.got; then + $rm -f Cppsym.got + exit 0 + fi + $rm -f Cppsym.got + exit 1 +else + $tr " " "$trnl" | ./Cppsym.try + exit 0 +fi +EOSH +chmod +x Cppsym +$eunicefix Cppsym +?X: The below awk script will die a horrible death if +?X: some of the tested symbols are not long ints. +?X: Also, we do not make difference between just defined and defined zero. +cat < Cppsym.try +$startsh +cat <<'EOCP' > try.c +#include +int main() { +EOCP +?X: The length($1) command guards against possible empty entries. +?X: The awk snippet is know to give heartburn to UNICOS/mk awk. +$awk \\ +EOSH +cat <<'EOSH' >> Cppsym.try +'length($1) > 0 { + printf "#ifdef %s\n#if %s+0\nprintf(\"%s=%%ld\\n\", (long)%s);\n#else\nprintf(\"%s\\n\");\n#endif\n#endif\n", $1, $1, $1, $1, $1 + printf "#ifdef _%s\n#if _%s+0\nprintf(\"_%s=%%ld\\n\", (long)_%s);\n#else\nprintf(\"_%s\\n\");\n#endif\n#endif\n", $1, $1, $1, $1, $1 + printf "#ifdef __%s\n#if __%s+0\nprintf(\"__%s=%%ld\\n\", (long)__%s);\n#else\nprintf(\"__%s\\n\");\n#endif\n#endif\n", $1, $1, $1, $1, $1 + printf "#ifdef __%s__\n#if __%s__+0\nprintf(\"__%s__=%%ld\\n\", (long)__%s__);\n#else\nprintf(\"__%s__\\n\");\n#endif\n#endif\n", $1, $1, $1, $1, $1 +}' >> try.c +echo 'return 0;}' >> try.c +EOSH +cat <> Cppsym.try +flags="$ccflags" +case "$osname-$gccversion" in +irix-) flags="\$flags -woff 1178" ;; +os2-*) flags="\$flags -Zlinker /PM:VIO" ;; +esac +$cc -o try $optimize \$flags $ldflags try.c $libs && $run ./try +EOSH +chmod +x Cppsym.try +$eunicefix Cppsym.try +./Cppsym < Cppsym.know > Cppsym.true +: now check the C compiler for additional symbols +?X: suggested by Jarkko Hietaniemi , thanks! +postprocess_cc_v='' +case "$osname" in +aix) postprocess_cc_v="|$tr , ' '" ;; +esac +$cat >ccsym <tmp.c <&1 $postprocess_cc_v\` +do + case "\$i" in + -D*) echo "\$i" | $sed 's/^-D//';; + -A*) $test "$gccversion" && echo "\$i" | $sed 's/^-A//' | $sed 's/\(.*\)(\(.*\))/\1=\2/';; + esac +done +$rm -f try.c +EOS +postprocess_cc_v='' +chmod +x ccsym +$eunicefix ccsym +./ccsym > ccsym1.raw +?X: AIX complains if $uniq is passed an empty file. ($sort apparently +?X: doesn't care.) --AD 14 July 1998 +if $test -s ccsym1.raw; then + $sort ccsym1.raw | $uniq >ccsym.raw +else + mv ccsym1.raw ccsym.raw +fi + +?X: canonicalize symbols for easier sort/uniq/comm usage: append =1 if no = sign +?X: the awk script must be on two lines for older awk programs, sigh! -- ADO +$awk '/\=/ { print $0; next } + { print $0"=1" }' ccsym.raw >ccsym.list +$awk '/\=/ { print $0; next } + { print $0"=1" }' Cppsym.true >ccsym.true +$comm -13 ccsym.true ccsym.list >ccsym.own +$comm -12 ccsym.true ccsym.list >ccsym.com +$comm -23 ccsym.true ccsym.list >ccsym.cpp +also='' +if $test -z ccsym.raw; then + echo "Your C compiler doesn't seem to define any symbols!" >&4 + echo " " + echo "However, your C preprocessor defines the following symbols:" + $cat Cppsym.true + ccsymbols='' + cppsymbols=`$cat Cppsym.true` + cppsymbols=`echo $cppsymbols` + cppccsymbols="$cppsymbols" +else + if $test -s ccsym.com; then + echo "Your C compiler and pre-processor define these symbols:" + $sed -e 's/\(..*\)=.*/\1/' ccsym.com + also='also ' + symbols='ones' + cppccsymbols=`$cat ccsym.com` + cppccsymbols=`echo $cppccsymbols` + $test "$silent" || sleep 1 + fi + if $test -s ccsym.cpp; then + $test "$also" && echo " " + echo "Your C pre-processor ${also}defines the following symbols:" + $sed -e 's/\(..*\)=.*/\1/' ccsym.cpp + also='further ' + cppsymbols=`$cat ccsym.cpp` + cppsymbols=`echo $cppsymbols` + $test "$silent" || sleep 1 + fi + if $test -s ccsym.own; then + $test "$also" && echo " " + echo "Your C compiler ${also}defines the following cpp symbols:" + $sed -e 's/\(..*\)=1/\1/' ccsym.own + $sed -e 's/\(..*\)=.*/\1/' ccsym.own | $uniq >>Cppsym.true + ccsymbols=`$cat ccsym.own` + ccsymbols=`echo $ccsymbols` + $test "$silent" || sleep 1 + fi +fi +$rm -f Cppsym.know Cppsym.true + diff --git a/mcon/U/Cross.U b/mcon/U/Cross.U new file mode 100644 index 0000000..feaef31 --- /dev/null +++ b/mcon/U/Cross.U @@ -0,0 +1,349 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Copyright (c) 2001 Jarkko Hietaniemi +?RCS: +?MAKE:run to from targetarch usecrosscompile: src awk cat grep test rm \ + echo sed mkdir cp touch chmod +?MAKE: -pick add $@ %< +?Y:TOP +?S:usecrosscompile: +?S: This variable conditionally defines the USE_CROSS_COMPILE symbol, +?S: and indicates that our package has been cross-compiled. +?S:. +?S:run: +?S: This variable contains the command used by Configure +?S: to copy and execute a cross-compiled executable in the +?S: target host. Useful and available only during the build. +?S: Empty string '' if not cross-compiling. +?S:. +?S:from: +?S: This variable contains the command used by Configure +?S: to copy files from the target host. Useful and available +?S: only during the build. +?S: The string ':' if not cross-compiling. +?S:. +?S:to: +?S: This variable contains the command used by Configure +?S: to copy to from the target host. Useful and available +?S: only during the build. +?S: The string ':' if not cross-compiling. +?S:. +?S:targetarch: +?S: If cross-compiling, this variable contains the target architecture. +?S: If not, this will be empty. +?S:. +?C:USE_CROSS_COMPILE: +?C: This symbol, if defined, indicates that the package is being +?C: cross-compiled. +?C:. +?C:CROSS_TARGET_ARCH: +?C: This symbol, if defined, indicates the target architecture +?C: the package has been cross-compiled to. +?C: Undefined if not a cross-compile. +?C:. +?H:?usecrosscompile:#ifndef USE_CROSS_COMPILE +?H:?usecrosscompile:#$usecrosscompile USE_CROSS_COMPILE /**/ +?H:?usecrosscompile:#define CROSS_TARGET_ARCH "$targetarch" /**/ +?H:?usecrosscompile:#endif +?H:. +?T:croak pwd exe f q i j cwd +?LINT:extern usecrosscompile +?LINT:extern cc +?LINT:extern usrinc +?LINT:change usrinc +?LINT:change ar +?LINT:change nm +?LINT:change ranlib +?LINT:extern targethost +?LINT:extern targetdir +?LINT:change targetdir +?LINT:extern targetuser +?LINT:change targetuser +?LINT:extern targetrun +?LINT:extern targetfrom +?LINT:extern targetto +?LINT:extern targetmkdir +?LINT:change targetrun +?LINT:change targetfrom +?LINT:change targetto +?LINT:change targetmkdir +?LINT:extern incpth +?LINT:extern libpth +?LINT:change incpth +?LINT:change libpth +?LINT:extern locincpth +?LINT:extern loclibpth +?LINT:change locincpth +?LINT:change loclibpth +: setup for possible cross-compilation +run='' +to=: +from=: +usecrosscompile='undef' +targetarch='' +case "$usecrosscompile" in +$define|true|[yY]*) +@if { test -d ../Cross } +?X: +?X: Cross-compilation is enabled when there is a 'Cross' directory found +?X: at the root of the package. This directory must contain the following +?X: entries for defining the cross-compilation process: +?X: +?X: FIXME FIXME +?X: WE MUST DISTINGUISH BETWEEN LOCAL cross-compiling AND REMOTE ONE +?X: ACTUALLY, REMOTE COMPILATION SHOULD BE CONFIGURED INTERACTIVELY +?X: IT WILL COPY ALL THE FILES FROM THE MANIFEST DOWN TO THE REMOTE DIR... +?X: (and copy things like 'mkdep', etc...) +?X: + $echo "Cross-compiling..." + croak='' + case "$cc" in + *-*-gcc) +?X: A cross-compiling gcc, probably. + targetarch=`$echo $cc|$sed 's/-gcc$//'` + ar=$targetarch-ar +?X: leave out ld, choosing it is more complex + nm=$targetarch-nm + ranlib=$targetarch-ranlib + $echo 'extern int foo;' > try.c + set X `$cc -v -E try.c 2>&1 | \ + $awk '/^#include &4 + for i in $*; do + j="`$echo $i|$sed 's,/include$,/lib,'`" + if $test -d $j; then + libpth="$libpth $j" + fi + done + libpth="`$echo $libpth|$sed 's/^ //'`" + echo "Guessing libpth '$libpth'." >&4 + fi + $rm -f try.c + ;; + esac + case "$targetarch" in + '') echo "Targetarch not defined." >&4; croak=y ;; + *) echo "Using targetarch $targetarch." >&4 ;; + esac + case "$incpth" in + '') echo "Incpth not defined." >&4; croak=y ;; + *) echo "Using incpth '$incpth'." >&4 ;; + esac + case "$libpth" in + '') echo "Libpth not defined." >&4; croak=y ;; + *) echo "Using libpth '$libpth'." >&4 ;; + esac + case "$usrinc" in + '') + for i in $incpth; do + if $test -f $i/errno.h -a -f $i/stdio.h -a -f $i/time.h; then + usrinc=$i + echo "Guessing usrinc $usrinc." >&4 + break + fi + done + case "$usrinc" in + '') echo "Usrinc not defined." >&4; croak=y ;; + esac + ;; + *) echo "Using usrinc $usrinc." >&4 ;; + esac + case "$targethost" in + '') echo "Targethost not defined." >&4; croak=y ;; + *) echo "Using targethost $targethost." >&4 + esac + locincpth=' ' + loclibpth=' ' + case "$croak" in + y) echo "Cannot continue, aborting." >&4; exit 1 ;; + esac + case "$src" in + /*) run=$src/Cross/run + targetmkdir=$src/Cross/mkdir + to=$src/Cross/to + from=$src/Cross/from + ;; + *) pwd=`$test -f ../Configure & cd ..; pwd` + run=$pwd/Cross/run + targetmkdir=$pwd/Cross/mkdir + to=$pwd/Cross/to + from=$pwd/Cross/from + ;; + esac + case "$targetrun" in + '') targetrun=ssh ;; + esac + case "$targetto" in + '') targetto=scp ;; + esac + case "$targetfrom" in + '') targetfrom=scp ;; + esac + run=$run-$targetrun + to=$to-$targetto + from=$from-$targetfrom + case "$targetdir" in + '') + targetdir=/tmp + echo "Guessing targetdir $targetdir." >&4 + ;; + esac + case "$targetuser" in + '') + targetuser=root + echo "Guessing targetuser $targetuser." >&4 + ;; + esac + case "$targetfrom" in + scp) q=-q ;; + *) q='' ;; + esac + case "$targetrun" in + ssh|rsh) + $cat >$run <&4 + exit 1 + ;; + esac + case "$targetmkdir" in + */Cross/mkdir) + $cat >$targetmkdir <&4 + exit 1 + ;; + esac + case "$targetto" in + scp|rcp) + $cat >$to <$to <&4 + exit 1 + ;; + esac + case "$targetfrom" in + scp|rcp) + $cat >$from <$from <&4 + exit 1 + ;; + esac + if $test ! -f $run; then + echo "Target 'run' script '$run' not found." >&4 + else + $chmod a+rx $run + fi + if $test ! -f $to; then + echo "Target 'to' script '$to' not found." >&4 + else + $chmod a+rx $to + fi + if $test ! -f $from; then + echo "Target 'from' script '$from' not found." >&4 + else + $chmod a+rx $from + fi + if $test ! -f $run -o ! -f $to -o ! -f $from; then + exit 1 + fi + $cat >&4 <&4 + exit 1 +@end + ;; +esac + diff --git a/mcon/U/Csym.U b/mcon/U/Csym.U new file mode 100644 index 0000000..e7c7c4b --- /dev/null +++ b/mcon/U/Csym.U @@ -0,0 +1,97 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Csym.U,v $ +?RCS: Revision 3.0.1.4 1995/07/25 13:36:29 ram +?RCS: patch56: re-arranged compile line to include ldflags before objects +?RCS: patch56: added quotes for OS/2 support +?RCS: +?RCS: Revision 3.0.1.3 1995/05/12 12:00:33 ram +?RCS: patch54: fixed C test program to bypasss gcc builtin type checks (ADO) +?RCS: +?RCS: Revision 3.0.1.2 1994/10/31 09:34:13 ram +?RCS: patch44: added Options to the MAKE line since it's no longer in Init.U +?RCS: +?RCS: Revision 3.0.1.1 1993/08/25 14:00:05 ram +?RCS: patch6: added ldflags as a conditional dependency and to compile line +?RCS: patch6: a final double quote was missing in csym variable after eval +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:50 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:Csym: Options contains libc libs runnm +cc +ccflags +ldflags rm +?MAKE: -pick add $@ %< +?LINT:define csym +?LINT:use libc +?S:csym: +?S: This shell variable is used internally by Configure to check +?S: wether a given C symbol is defined or not. A typical use is: +?S: set symbol result [-fva] [previous] +?S: eval $csym +?S: That will set result to 'true' if the function [-f], variable [-v] +?S: or array [-a] is defined, 'false' otherwise. If a previous value is +?S: given and the -r flag was provided on the command line, that value +?S: is reused without questioning. +?S:. +?V:csym +?T:tval tx tlook tf tdc tc +: is a C symbol defined? +csym='tlook=$1; +case "$3" in +-v) tf=libc.tmp; tc=""; tdc="";; +-a) tf=libc.tmp; tc="[0]"; tdc="[]";; +*) tlook="^$1\$"; tf=libc.list; tc=""; tdc="()";; +esac; +tx=yes; +case "$reuseval-$4" in +true-) ;; +true-*) tx=no; eval "tval=\$$4"; case "$tval" in "") tx=yes;; esac;; +esac; +case "$tx" in +yes) + case "$runnm" in + true) + if $contains $tlook $tf >/dev/null 2>&1; + then tval=true; + else tval=false; + fi;; + *) +?X: +?X: We use 'char' instead of 'int' to try to circumvent overzealous +?X: optimizing compilers using built-in prototypes for commonly used +?X: routines to complain when seeing a different external declaration. For +?X: instance, gcc 2.6.3 fails if we use 'int' and we attempt a test against +?X: memcpy() on machines where sizeof(int) == sizeof(char *) (the usual return +?X: type), the compiler assuming it's a built-in declaration given that the +?X: returned size matches. At least with 'char' we are safe! -- RAM, for ADO +?X: +?X: Let's thank GNU cc for making our lifes so easy! :-) +?X: (An alternative for the future would be to use our knowledge about gcc +?X: to force a -fno-builtin option in the compile test, in case the 'char' +?X: trick is obsoleted by future gcc releases). -- RAM +?X: +?X: Lastly, gcc 3.4 otimizes &missing == 0 away, so we use + 2 instead now. +?X: The GNU folks like to do weird things, don't they? -- RAM, 2004-06-05 +?X: + echo "extern char $1$tdc; int main() { return &$1$tc + 2; }" > t.c; + if $cc $ccflags $ldflags -o t t.c $libs >/dev/null 2>&1; + then tval=true; + else tval=false; + fi; + $rm -f t t.c;; + esac;; +*) + case "$tval" in + $define) tval=true;; + *) tval=false;; + esac;; +esac; +eval "$2=$tval"' + diff --git a/mcon/U/End.U b/mcon/U/End.U new file mode 100644 index 0000000..165b5af --- /dev/null +++ b/mcon/U/End.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: End.U,v $ +?RCS: Revision 3.0 1993/08/18 12:04:51 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit serves as the goal which forces make to choose all the units that +?X: ask questions. The $W on the ?MAKE: line is the list of all symbols wanted. +?X: To force any unit to be included, copy this unit to your private U directory +?X: and add the name of the unit desired to the ?MAKE: dependency line. +?X: +?MAKE:End: $W +?MAKE: -pick add $@ %< +?LINT:use $W +: end of configuration questions +echo " " +echo "End of configuration questions." + diff --git a/mcon/U/Extract.U b/mcon/U/Extract.U new file mode 100644 index 0000000..d01d324 --- /dev/null +++ b/mcon/U/Extract.U @@ -0,0 +1,105 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Extract.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 14:58:52 ram +?RCS: patch61: added support for src.U +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 15:51:46 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:52 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit produces a shell script which can be doted in order to extract +?X: .SH files with variable substitutions. +?X: +?X: When running Configure from a remote directory ($src is not '.'), +?X: then the files will be created in that directory, so beware! +?X: +?MAKE:Extract: Mkdirp src +?MAKE: -pick add $@ %< +?F:./extract +?T:CONFIG SRC dir file +: script used to extract .SH files with variable substitutions +cat >extract <>extract <<'EOS' +echo "Doing variable substitutions on .SH files..." +if test -f "$SRC/MANIFEST"; then + set x `awk '{print $1}' <$SRC/MANIFEST | grep '\.SH'` +else + echo "(Looking for .SH files under the source directory.)" + set x `(cd "$SRC"; find . -name "*.SH" -print)` +fi +shift +case $# in +0) set x `(cd "$SRC"; echo *.SH)`; shift;; +esac +if test ! -f "$SRC/$1"; then + shift +fi +for file in $*; do + case "$SRC" in + ".") + case "$file" in + */*) + dir=`expr X$file : 'X\(.*\)/'` + file=`expr X$file : 'X.*/\(.*\)'` + (cd $dir && . ./$file) + ;; + *) + . ./$file + ;; + esac + ;; + *) +?X: +?X: When running Configure remotely ($src is not '.'), we cannot source +?X: the files directly, since that would wrongly cause the extraction +?X: where the source lie instead of withing the current directory. Therefore, +?X: we need to 'sh src -> Options -> Extract +?X: The Begin.U unit now requires us before beginning to do anything +?X: interesting, to ensure proper semantics. -- RAM, 15/03/96 +?X: +?MAKE:Extractall: Extract Options +?MAKE: -pick wipe $@ %< +: extract files and exit if asked to do so +case "$extractsh" in +true) +?X: Undo the forced silent=true when -S was supplied, by probing realsilent +?X: which was set iff -s was also given. See Options.U for details. + case "$realsilent" in + true) ;; + *) exec 1>&4;; + esac + case "$config_sh" in + '') config_sh='config.sh';; + esac + echo " " + echo "Fetching answers from $config_sh..." + cd .. + . $config_sh + test "$override" && . ./optdef.sh + echo " " +?X: extract has to be run from the top directory, not within UU. + . UU/extract + rm -rf UU + echo "Extraction done." + exit 0 + ;; +esac + diff --git a/mcon/U/Filexp.U b/mcon/U/Filexp.U new file mode 100644 index 0000000..7602808 --- /dev/null +++ b/mcon/U/Filexp.U @@ -0,0 +1,69 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Filexp.U,v $ +?RCS: Revision 3.0.1.2 1994/10/29 15:52:53 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: patch36: added HOME to the ?T: line since metalint now checks ${HOME} +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 14:03:00 ram +?RCS: patch23: made sure error status from csh is propagated (WED) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:53 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit produces a shell script which will expand filenames beginning +?X: with tildes. The script is deleted at the end of Configure. +?X: +?MAKE:Filexp: startsh sed test expr eunicefix +?MAKE: -pick add $@ %< +?F:./filexp +?T:HOME LOGDIR dir me name failed +: set up shell script to do ~ expansion +cat >filexp <&2 + exit 1 + fi + case "\$1" in + */*) + echo \$dir/\`$expr x\$1 : '..[^/]*/\(.*\)'\` + ;; + *) + echo \$dir + ;; + esac + fi + ;; +*) + echo \$1 + ;; +esac +EOSS +chmod +x filexp +$eunicefix filexp + diff --git a/mcon/U/Findhdr.U b/mcon/U/Findhdr.U new file mode 100644 index 0000000..50f7ba7 --- /dev/null +++ b/mcon/U/Findhdr.U @@ -0,0 +1,126 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Thomas Neumann +?RCS: +?RCS: $Log: Findhdr.U,v $ +?RCS: Revision 3.0.1.2 1994/10/29 15:53:08 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 14:03:56 ram +?RCS: patch23: cppminus must be after other cppflags, not before +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:54 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit produces a findhdr script which is used to locate the header +?X: files in $usrinc or other stranger places using cpp capabilities. The +?X: script is given an include file base name, like 'stdio.h' or 'sys/file.h' +?X: and it returns the full path of the include file and a zero status or an +?X: empty string with an error status if the file could not be located. +?X: +?MAKE:Findhdr: grep test tr rm +usrinc awk cat startsh \ + cppstdin cppminus +cppflags eunicefix osname +?MAKE: -pick add $@ %< +?LINT:define fieldn +?S:fieldn: +?S: This variable is used internally by Configure. It contains the position +?S: of the included file name in cpp output. That is to say, when cpp +?S: pre-processes a #include line, it replaces it by a # line which +?S: contains the original position in the input file and the full name of +?S: included file, between "quotes". +?S:. +?V:fieldn +?F:./findhdr !fieldn +?T:cline pos wanted name awkprg cppfilter testaccess status usrincdir +: determine filename position in cpp output +echo " " +echo "Computing filename position in cpp output for #include directives..." >&4 +echo '#include ' > foo.c +case "$osname" in +vos) + testaccess=-e +?X: VOS: path component separator is > + cppfilter="tr '\\\\>' '/' |" + ;; +*) + testaccess=-r + cppfilter='' + ;; +esac +$cat >fieldn </dev/null | \ +$grep '^[ ]*#.*stdio\.h' | \ +while read cline; do + pos=1 + set \$cline + while $test \$# -gt 0; do + if $test $testaccess \`echo \$1 | $tr -d '"'\`; then + echo "\$pos" + exit 0 + fi + shift + pos=\`expr \$pos + 1\` + done +done +EOF +chmod +x fieldn +fieldn=`./fieldn` +$rm -f foo.c fieldn +case $fieldn in +'') pos='???';; +1) pos=first;; +2) pos=second;; +3) pos=third;; +*) pos="${fieldn}th";; +esac +echo "Your cpp writes the filename in the $pos field of the line." + +?X: To locate a header file, we cannot simply check for $usrinc/file.h, since +?X: some machine have the headers in weird places and our only hope is that +?X: the C pre-processor will know how to find those headers. Thank you NexT! +: locate header file +$cat >findhdr <" > foo\$\$.c +$cppstdin $cppminus $cppflags < foo\$\$.c 2>/dev/null | \ +$cppfilter $grep "^[ ]*#.*\$wanted" | \ +while read cline; do + name=\`echo \$cline | $awk "\$awkprg" | $tr -d '"'\` + case "\$name" in + *[/\\\\]\$wanted) echo "\$name"; exit 1;; + *[\\\\/]\$wanted) echo "\$name"; exit 1;; + *) exit 2;; + esac +done +?X: status = 0: grep returned 0 lines, case statement not executed +?X: status = 1: headerfile found +?X: status = 2: while loop executed, no headerfile found +status=\$? +$rm -f foo\$\$.c +if test \$status -eq 1; then + exit 0 +fi +exit 1 +EOF +chmod +x findhdr +$eunicefix findhdr + diff --git a/mcon/U/Finish.U b/mcon/U/Finish.U new file mode 100644 index 0000000..2ed7bd9 --- /dev/null +++ b/mcon/U/Finish.U @@ -0,0 +1,141 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Finish.U,v $ +?RCS: Revision 3.0.1.6 1995/02/15 14:09:30 ram +?RCS: patch51: now clearer about how to edit config.sh at the prompt (WED) +?RCS: +?RCS: Revision 3.0.1.5 1994/10/29 15:53:14 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0.1.4 1994/05/06 14:19:37 ram +?RCS: patch23: added blank lines around 'End of Configure' +?RCS: +?RCS: Revision 3.0.1.3 1993/10/16 13:46:09 ram +?RCS: patch12: replaced Config_h by Magic_h in the dependency line +?RCS: +?RCS: Revision 3.0.1.2 1993/09/13 15:45:26 ram +?RCS: patch10: fixed shell evaluation w/o shell escape while in silent mode +?RCS: +?RCS: Revision 3.0.1.1 1993/08/30 08:55:59 ram +?RCS: patch8: prevents myread from blocking on empty answers, exceptionally +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:55 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit is the very last one in the Configure script. It runs all the +?X: SH files, which among other things produce config.h and (usually) Makefile. +?X: It offers to do a make depend if the Makefile contains that target. +?X: +?MAKE:Finish: Chk_MANI Extract Myread Oldsym Magic_h cat rm contains \ + test package make +?MAKE: -pick add $@ %< +?F:!config.sh +?T:pwd +: Finish up by extracting the .SH files +case "$alldone" in +exit) + $rm -rf UU + echo "Extraction done." + exit 0 + ;; +cont) + ;; +'') + dflt='' + nostick=true + $cat <&4 -c "$ans";; + esac + ;; +esac + +: if this fails, just run all the .SH files by hand +. ./config.sh + +?X: +?X: Turn silent mode off from now on (we want a verbose file extraction). +?X: This means we have to explicitely test for '$silent' from now on to +?X: strip off any verbose messages. +?X: +echo " " +exec 1>&4 +pwd=`pwd` +. ./UU/extract +cd "$pwd" + +if $contains '^depend:' [Mm]akefile >/dev/null 2>&1; then + dflt=y + case "$silent" in + true) ;; + *) + $cat < makedepend.out &" +It can take a while, so you might not want to run it right now. + +EOM + ;; + esac + rp="Run $make depend now?" + . UU/myread + case "$ans" in + y*) + $make depend && echo "Now you must run '$make'." + ;; + *) + echo "You must run '$make depend' then '$make'." + ;; + esac +elif test -f [Mm]akefile; then + echo " " + echo "Now you must run a $make." +else + echo "Configure done." +fi + +if $test -f Policy.sh; then + $cat <&4 +fi +?X: +?X: kit*isdone files are left over by shell archives built using the makedist +?X: script which comes from dist, while ark*isdone files are left over by +?X: the cshar archive maker. +?X: +$rm -f kit*isdone ark*isdone +$rm -rf UU + +: End of Configure + diff --git a/mcon/U/Getfile.U b/mcon/U/Getfile.U new file mode 100644 index 0000000..fe917ad --- /dev/null +++ b/mcon/U/Getfile.U @@ -0,0 +1,339 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Getfile.U,v $ +?RCS: Revision 3.0.1.7 1997/02/28 15:01:06 ram +?RCS: patch61: getfile script now begins with "startsh" +?RCS: +?RCS: Revision 3.0.1.6 1995/02/15 14:11:00 ram +?RCS: patch51: was not working if ~'s allowed with d_portable on (WED) +?RCS: +?RCS: Revision 3.0.1.5 1995/01/11 15:11:25 ram +?RCS: patch45: added support for escaping answers to skip various checks +?RCS: patch45: modified message issued after file expansion +?RCS: +?RCS: Revision 3.0.1.4 1994/10/29 15:53:19 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0.1.3 1994/05/06 14:23:36 ram +?RCS: patch23: getfile could be confused by file name in "locate" requests +?RCS: patch23: new 'p' directive to assume file is in people's path (WED) +?RCS: +?RCS: Revision 3.0.1.2 1994/01/24 14:01:31 ram +?RCS: patch16: added metalint hint on changed 'ans' variable +?RCS: +?RCS: Revision 3.0.1.1 1993/09/13 15:46:27 ram +?RCS: patch10: minor format problems and misspellings fixed +?RCS: patch10: now performs from package dir and not from UU subdir +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:56 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit produces a bit of shell code that must be dotted in in order +?X: to get a file name and make some sanity checks. Optionally, a ~name +?X: expansion is performed. +?X: +?X: To use this unit, $rp and $dflt must hold the question and the +?X: default answer, which will be passed as-is to the myread script. +?X: The $fn variable must hold the file type (f or d, for file/directory). +?X: If $gfpth is set to a list of space-separated list of directories, +?X: those are prefixes for the filename. Unless $gfpthkeep is set to 'y', +?X: gfpth is cleared on return from Getfile. +?X: +?X: If is is followed by a ~, then ~name substitution will occur. Upon return, +?X: $ans is set with the filename value. If a / is specified, then only a full +?X: path name is accepted (but ~ substitution occurs before, if needed). The +?X: expanded path name is returned in that case. +?X: +?X: If a + is specified, the existence checks are skipped. This usually means +?X: the file/directory is under the full control of the program. +?X: +?X: If the 'n' (none) type is used, then the user may answer none. +?X: The 'e' (expand) switch may be used to bypass d_portable, expanding ~name. +?X: +?X: If the 'l' (locate) type is used, then it must end with a ':' and then a +?X: file name. If the answer is a directory, the file name will be appended +?X: before testing for file existence. This is useful in locate-style +?X: questions like "where is the active file?". In that case, one should +?X: use: +?X: +?X: dflt='~news/lib' +?X: fn='l~:active' +?X: rp='Where is the active file?' +?X: . ./getfile +?X: active="$ans" +?X: +?X: If the 'p' (path) letter is specified along with 'l', then an answer +?X: without a leading / will be expected to be found in everyone's path. +?X: +?X: It is also possible to include a comma-separated list of items within +?X: parentheses to specify which items should be accepted as-is with no +?X: further checks. This is useful when for instance a full path is expected +?X: but the user may escape out via "magical" answers. +?X: +?X: If the answer to the question is 'none', then the existence checks are +?X: skipped and the empty string is returned. +?X: +?MAKE:Getfile: d_portable contains startsh Myread Filexp tr trnl +?MAKE: -pick add $@ %< +?V:ansexp:fn gfpth gfpthkeep +?F:./getfile +?T:tilde type what orig_rp orig_dflt fullpath already redo skip none_ok \ + value exp_file nopath_ok loc_file fp pf dir direxp +?LINT:change ans +?LINT:change gfpth +: now set up to get a file name +cat <getfile +$startsh +EOS +cat <<'EOSC' >>getfile +tilde='' +fullpath='' +already='' +skip='' +none_ok='' +exp_file='' +nopath_ok='' +orig_rp="$rp" +orig_dflt="$dflt" +case "$gfpth" in +'') gfpth='.' ;; +esac + +?X: Begin by stripping out any (...) grouping. +case "$fn" in +*\(*) + : getfile will accept an answer from the comma-separated list + : enclosed in parentheses even if it does not meet other criteria. + expr "$fn" : '.*(\(.*\)).*' | $tr ',' $trnl >getfile.ok + fn=`echo $fn | sed 's/(.*)//'` + ;; +esac + +?X: Catch up 'locate' requests early, so that we may strip the file name +?X: before looking at the one-letter commands, in case the file name contains +?X: one of them. Reported by Wayne Davison . +case "$fn" in +*:*) + loc_file=`expr $fn : '.*:\(.*\)'` + fn=`expr $fn : '\(.*\):.*'` + ;; +esac + +case "$fn" in +*~*) tilde=true;; +esac +case "$fn" in +*/*) fullpath=true;; +esac +case "$fn" in +*+*) skip=true;; +esac +case "$fn" in +*n*) none_ok=true;; +esac +case "$fn" in +*e*) exp_file=true;; +esac +case "$fn" in +*p*) nopath_ok=true;; +esac + +case "$fn" in +*f*) type='File';; +*d*) type='Directory';; +*l*) type='Locate';; +esac + +what="$type" +case "$what" in +Locate) what='File';; +esac + +case "$exp_file" in +'') + case "$d_portable" in + "$define") ;; + *) exp_file=true;; + esac + ;; +esac + +cd .. +while test "$type"; do + redo='' + rp="$orig_rp" + dflt="$orig_dflt" + case "$tilde" in + true) rp="$rp (~name ok)";; + esac + . UU/myread +?X: check for allowed escape sequence which may be accepted verbatim. + if test -f UU/getfile.ok && \ + $contains "^$ans\$" UU/getfile.ok >/dev/null 2>&1 + then + value="$ans" + ansexp="$ans" + break + fi + case "$ans" in + none) + value='' + ansexp='' + case "$none_ok" in + true) type='';; + esac + ;; + *) + case "$tilde" in + '') value="$ans" + ansexp="$ans";; + *) + value=`UU/filexp $ans` + case $? in + 0) + if test "$ans" != "$value"; then + echo "(That expands to $value on this system.)" + fi + ;; + *) value="$ans";; + esac + ansexp="$value" + case "$exp_file" in + '') value="$ans";; + esac + ;; + esac + case "$fullpath" in + true) +?X: Perform all the checks on ansexp and not value since when d_portable +?X: is defined, the original un-expanded answer which is stored in value +?X: would lead to "non-existent" error messages whilst ansexp has been +?X: properly expanded. -- Fixed by Jan.Djarv@sa.erisoft.se (Jan Djarv) +?X: Always expand ~user if '/' was requested + case "$ansexp" in + /*) value="$ansexp" ;; +?X: Allow for c:/some/path + [a-zA-Z]:/*) value="$ansexp" ;; + *) + redo=true + case "$already" in + true) + echo "I shall only accept a full path name, as in /bin/ls." >&4 + echo "Use a ! shell escape if you wish to check pathnames." >&4 + ;; + *) + echo "Please give a full path name, starting with slash." >&4 + case "$tilde" in + true) + echo "Note that using ~name is ok provided it expands well." >&4 + already=true + ;; + esac + esac + ;; + esac + ;; + esac + case "$redo" in + '') + case "$type" in + File) + for fp in $gfpth; do + if test "X$fp" = X.; then + pf="$ansexp" + else + pf="$fp/$ansexp" + fi + if test -f "$pf"; then + type='' + elif test -r "$pf" || (test -h "$pf") >/dev/null 2>&1 + then + echo "($value is not a plain file, but that's ok.)" + type='' + fi + if test X"$type" = X; then + value="$pf" + break + fi + done + ;; + Directory) + for fp in $gfpth; do + if test "X$fp" = X.; then + dir="$ans" + direxp="$ansexp" + else + dir="$fp/$ansexp" + direxp="$fp/$ansexp" + fi + if test -d "$direxp"; then + type='' + value="$dir" + break + fi + done + ;; + Locate) + if test -d "$ansexp"; then + echo "(Looking for $loc_file in directory $value.)" + value="$value/$loc_file" + ansexp="$ansexp/$loc_file" + fi + if test -f "$ansexp"; then + type='' + fi + case "$nopath_ok" in + true) case "$value" in + */*) ;; + *) echo "Assuming $value will be in people's path." + type='' + ;; + esac + ;; + esac + ;; + esac + + case "$skip" in + true) type=''; + esac + + case "$type" in + '') ;; + *) + if test "$fastread" = yes; then + dflt=y + else + dflt=n + fi + rp="$what $value doesn't exist. Use that name anyway?" + . UU/myread + dflt='' + case "$ans" in + y*) type='';; + *) echo " ";; + esac + ;; + esac + ;; + esac + ;; + esac +done +cd UU +ans="$value" +rp="$orig_rp" +dflt="$orig_dflt" +rm -f getfile.ok +test "X$gfpthkeep" != Xy && gfpth="" +EOSC + diff --git a/mcon/U/Guess.U b/mcon/U/Guess.U new file mode 100644 index 0000000..3459325 --- /dev/null +++ b/mcon/U/Guess.U @@ -0,0 +1,228 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Guess.U,v $ +?RCS: Revision 3.0.1.5 1995/07/25 13:37:14 ram +?RCS: patch56: now knows about OS/2 platforms +?RCS: +?RCS: Revision 3.0.1.4 1994/10/29 15:53:55 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: patch36: call ./xenix explicitely instead of relying on PATH +?RCS: +?RCS: Revision 3.0.1.3 1993/12/15 08:14:35 ram +?RCS: patch15: variable d_bsd was not always set properly +?RCS: +?RCS: Revision 3.0.1.2 1993/08/30 08:57:14 ram +?RCS: patch8: fixed comment which wrongly attributed the usrinc symbol +?RCS: patch8: no more ugly messages when no /usr/include/ctype.h +?RCS: +?RCS: Revision 3.0.1.1 1993/08/27 14:37:37 ram +?RCS: patch7: added support for OSF/1 machines +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:57 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit hazards some guesses as to what the general nature of the system +?X: is. The information it collects here is used primarily to establish default +?X: answers to other questions. +?X: +?MAKE:Guess d_eunice d_xenix d_bsd d_linux d_dos d_os2: cat test echo n c \ + contains rm tr Loc eunicefix +?MAKE: -pick add $@ %< +?S:d_eunice: +?S: This variable conditionally defines the symbols EUNICE_SYSTEM, which +?S: alerts the C program that it must deal with ideosyncracies of VMS. +?S:. +?S:d_xenix: +?S: This variable conditionally defines the symbol XENIX_SYSTEM, which alerts +?S: the C program that it runs under Xenix. +?S:. +?S:d_dos: +?S: This symbol conditionally defines the symbol DOS_SYSTEM when running on +?S: DOS with DJGPP or Cygwin. +?S:. +?S:d_os2: +?S: This symbol conditionally defines the symbol OS2_SYSTEM when running on +?S: an OS/2 system. +?S:. +?S:d_bsd: +?S: This symbol conditionally defines the symbol BSD_SYSTEM when running on a +?S: BSD system. +?S:. +?S:d_linux: +?S: This symbol conditionally defines the symbol LINUX_SYSTEM when running +?S: on a Linux system. +?S:. +?C:EUNICE_SYSTEM (EUNICE): +?C: This symbol, if defined, indicates that the program is being compiled +?C: under the EUNICE package under VMS. The program will need to handle +?C: things like files that don't go away the first time you unlink them, +?C: due to version numbering. It will also need to compensate for lack +?C: of a respectable link() command. +?C:. +?C:VMS_SYSTEM (VMS): +?C: This symbol, if defined, indicates that the program is running under +?C: VMS. It is currently only set in conjunction with the EUNICE symbol. +?C:. +?C:XENIX_SYSTEM (XENIX): +?C: This symbol, if defined, indicates that the program is running under +?C: Xenix (at least 3.0 ?). +?C:. +?C:DOS_SYSTEM: +?C: This symbol, if defined, indicates that the program is running under +?C: DOS with DJGPP. +?C:. +?C:OS2_SYSTEM: +?C: This symbol, if defined, indicates that the program is running under +?C: an OS/2 system. +?C:. +?C:BSD_SYSTEM: +?C: This symbol, if defined, indicates that the program is running under +?C: a BSD system. +?C:. +?C:LINUX_SYSTEM: +?C: This symbol, if defined, indicates that the program is running under +?C: a Linux system. +?C:. +?H:#$d_eunice EUNICE_SYSTEM /**/ +?H:#$d_eunice VMS_SYSTEM /**/ +?H:#$d_xenix XENIX_SYSTEM /**/ +?H:#$d_dos DOS_SYSTEM /**/ +?H:#$d_os2 OS2_SYSTEM /**/ +?H:#$d_bsd BSD_SYSTEM /**/ +?H:#$d_linux LINUX_SYSTEM /**/ +?H:. +?F:./bsd ./usg ./v7 ./osf1 ./eunice ./xenix ./venix ./dos ./os2 ./gnu ./linux +?T:xxx DJGPP MACHTYPE +: make some quick guesses about what we are up against +echo " " +$echo $n "Hmm... $c" +echo exit 1 >bsd +echo exit 1 >usg +echo exit 1 >v7 +echo exit 1 >osf1 +echo exit 1 >eunice +echo exit 1 >xenix +echo exit 1 >venix +echo exit 1 >os2 +echo exit 1 >gnu +echo exit 1 >linux +echo exit 1 >dos +d_bsd="$undef" +d_linux="$undef" +d_dos="$undef" +d_os2="$undef" +?X: +?X: Do not use 'usrinc', or we get a circular dependency. because +?X: usrinc is defined in usrinc.U, which relies on us... +?X: +$cat /usr/include/signal.h /usr/include/sys/signal.h >foo 2>/dev/null +if test -f /osf_boot || $contains 'OSF/1' /usr/include/ctype.h >/dev/null 2>&1 +then + echo "Looks kind of like an OSF/1 system, but we'll see..." + echo exit 0 >osf1 +elif test `echo abc | $tr a-z A-Z` = Abc ; then + xxx=`./loc addbib blurfl $pth` + if $test -f $xxx; then + echo "Looks kind of like a USG system with BSD features, but we'll see..." + echo exit 0 >bsd + echo exit 0 >usg + else + if $contains SIGTSTP foo >/dev/null 2>&1 ; then + echo "Looks kind of like an extended USG system, but we'll see..." + else + echo "Looks kind of like a USG system, but we'll see..." + fi + echo exit 0 >usg + fi +elif $contains SIGTSTP foo >/dev/null 2>&1 ; then + echo "Looks kind of like a BSD system, but we'll see..." + d_bsd="$define" + echo exit 0 >bsd +elif + $rm --version 2>/dev/null >foo; + $contains "Free Software Foundation" foo >/dev/null +then + xxx=`uname` + echo exit 0 >gnu + echo "Looks kind of like a GNU/$xxx system, but we'll see..." + if $test X$xxx = XLinux; then + d_linux="$define" + echo exit 0 >linux + fi +else + echo "Looks kind of like a Version 7 system, but we'll see..." + echo exit 0 >v7 +fi +case "$eunicefix" in +*unixtovms*) + $cat <<'EOI' +There is, however, a strange, musty smell in the air that reminds me of +something...hmm...yes...I've got it...there's a VMS nearby, or I'm a Blit. +EOI + echo exit 0 >eunice + d_eunice="$define" +: it so happens the Eunice I know will not run shell scripts in Unix format + ;; +*) + echo " " + echo "Congratulations. You aren't running Eunice." + d_eunice="$undef" + ;; +esac +case "$p_" in +:) ;; +*) + $cat <<'EOI' +I have the feeling something is not exactly right, however...don't tell me... +EOI + if test -n "$DJGPP"; then + case "X${MACHTYPE:-nonesuchmach}" in + cygwin) echo "hah!... you're running under Cygwin!";; + *) echo "got it... you're running DOS with DJGPP!";; + esac + echo exit 0 >dos + d_dos="$define" + else + $cat <<'EOI' +lemme think...does HAL ring a bell?...no, of course, you're only running OS/2! +EOI + echo exit 0 >os2 + d_os2="$define" + fi + ;; +esac +if test -f /xenix; then + echo "Actually, this looks more like a XENIX system..." + echo exit 0 >xenix + d_xenix="$define" +else + echo " " + echo "It's not Xenix..." + d_xenix="$undef" +fi +chmod +x xenix +$eunicefix xenix +if test -f /venix; then + echo "Actually, this looks more like a VENIX system..." + echo exit 0 >venix +else + echo " " + if ./xenix; then + : null + else + echo "Nor is it Venix..." + fi +fi +chmod +x bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux +$eunicefix bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux +$rm -f foo + diff --git a/mcon/U/Head.U b/mcon/U/Head.U new file mode 100644 index 0000000..1ee0e6b --- /dev/null +++ b/mcon/U/Head.U @@ -0,0 +1,282 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Head.U,v $ +?RCS: Revision 3.0.1.9 1997/02/28 15:02:09 ram +?RCS: patch61: make sure we unset CDPATH for shells that support this +?RCS: patch61: improved Korn shell detection and handling +?RCS: +?RCS: Revision 3.0.1.8 1995/07/25 13:40:02 ram +?RCS: patch56: added SVR4-ish /opt directories to path list (ADO) +?RCS: patch56: OS/2 platforms are using another path separator +?RCS: +?RCS: Revision 3.0.1.7 1995/03/21 08:46:15 ram +?RCS: patch52: definition of paths wrongly added spurious ':' chars +?RCS: +?RCS: Revision 3.0.1.6 1994/10/29 15:54:19 ram +?RCS: patch36: make sure ENV is unset before calling /bin/ksh +?RCS: +?RCS: Revision 3.0.1.5 1994/08/29 16:03:44 ram +?RCS: patch32: now sets PATH only using existing directories +?RCS: +?RCS: Revision 3.0.1.4 1994/06/20 06:54:28 ram +?RCS: patch30: now computes its invocation name into 'me' +?RCS: patch30: symbol me is made visible to all units read-only +?RCS: +?RCS: Revision 3.0.1.3 1993/12/15 08:15:07 ram +?RCS: patch15: added /sbin:/usr/sbin:/usr/libexec in PATH for BSD/386 +?RCS: +?RCS: Revision 3.0.1.2 1993/11/10 17:32:35 ram +?RCS: patch14: ensure PATH is reset to '.' before testing for alias +?RCS: +?RCS: Revision 3.0.1.1 1993/08/27 14:38:07 ram +?RCS: patch7: not all 'test' programs support the -x option +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:58 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This is the very first unit in the Configure script. It is mostly just +?X: things to keep people from getting into a tizzy right off the bat. +?X: +?MAKE:Head: +?MAKE: -pick wipe $@ %< +?V:PATH p_ _exe me newsh +?T:argv Id p paths OS2_SHELL DJGPP +?T:inksh needksh avoidksh newsh changesh reason +?F:!* +?LINT:extern ENV CDPATH SHELL MACHTYPE +?LINT:change ENV CDPATH +?LINT:nocomment +#! /bin/sh +# +# If these # comments don't work, trim them. Don't worry about any other +# shell scripts, Configure will trim # comments from them for you. +# +# (If you are trying to port this package to a machine without sh, +# I would suggest you have a look at the prototypical config_h.SH file +# and edit it to reflect your system. Some packages may include samples +# of config.h for certain machines, so you might look for one of those.) +# +?X: +?X: NOTE THAT A CONFIGURE SCRIPT IS IN THE PUBLIC DOMAIN (whether or not +?X: the software which uses it is in the public domain). +?X: +# Yes, you may rip this off to use in other distribution packages. This +# script belongs to the public domain and cannot be copyrighted. +# +?X: +?X: WE ASK YOU NOT TO REMOVE OR ALTER THE FOLLOWING PARAGRAPH, PLEASE: +?X: +# Note: this Configure script was generated automatically. Rather than +# working with this copy of Configure, you may wish to get metaconfig. +# The dist package (which contains metaconfig) is available at +# http://sourceforge.net/projects/dist/ +?X: +?X: NOTA BENE: +?X: If you develop you own version of metaconfig based on this work, +?X: you have to add some comments telling that the script was generated +?X: by your version, not mine: It credits your work. +?X: + +# $Id$ +# +# Generated on [metaconfig PL] + +cat >c1$$ <c2$$ </dev/null` + test "$me" || me=$0 + ;; +esac + +?X: +?X: To be able to run under OS/2, we must detect that early enough to use +?X: the proper path separator, stored in $p_. It is : on UNIX and ; on +?X: DOSish systems such as OS/2. +?X: +: Proper separator for the PATH environment variable +p_=: +: On OS/2 this directory should exist if this is not floppy only system ":-]" +if test -d c:/. ; then + if test -n "$OS2_SHELL"; then + p_=\; + PATH=`cmd /c "echo %PATH%" | tr '\\\\' / ` +?X: That's a bug in ksh5.22 + OS2_SHELL=`cmd /c "echo %OS2_SHELL%" | tr '\\\\' / | tr '[A-Z]' '[a-z]'` + elif test -n "$DJGPP"; then + case "X${MACHTYPE:-nonesuchmach}" in + *cygwin) ;; + *) p_=\; ;; + esac + fi +fi + +?X: +?X: There are two schools of thoughts here. Some people correctly argue that +?X: the user has a better chance than we do of setting a reasonable PATH and +?X: others argue that Configure is the best place there is to set up a suitable +?X: PATH. Well, here we try to compromize by keeping the user's PATH and +?X: appending some directories which are known to work on some machine or the +?X: other. The rationale behind this being that a novice user might not have a +?X: proper environment variable set, and some directories like /etc (where +?X: chown is located on some BSD systems) may be missing--RAM. +?X: +?X: SVR4 adds an /opt directory for optional packages. Some sites use +?X: various permutations on /opt as opposed to /usr or /usr/local.-- ADO +?X: +?X: We only add directories that are not already in the PATH of the +?X: user and the directories must exist also. +?X: +: Proper PATH setting +paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin' +paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin" +paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin" +paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin" +paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb" +paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /usr/ccs/bin" +paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib" +paths="$paths /sbin /usr/sbin /usr/libexec" +paths="$paths /system/gnu_library/bin" + +for p in $paths +do + case "$p_$PATH$p_" in + *$p_$p$p_*) ;; + *) test -d $p && PATH=$PATH$p_$p ;; + esac +done + +PATH=.$p_$PATH +export PATH + +: shall we be using ksh? +inksh='' +needksh='' +avoidksh='' +newsh=/bin/ksh +changesh='' +?X: Use (alias -x) and not (alias) since zsh and bash recognize the alias +?X: builtin but not the -x option which is typically ksh... +?X: We need to set up PATH before calling the "alias" built-in since some +?X: systems like HP-UX have a binary called /bin/alias. +if (PATH=.; alias -x) >/dev/null 2>&1; then + inksh=true +fi +?X: On HP-UX, large Configure scripts may exercise a bug in /bin/sh, use ksh +if test -f /hp-ux -a -f /bin/ksh; then + needksh='to avoid sh bug in "here document" expansion' +fi +?X: On AIX4, /bin/sh is really ksh and it causes problems, use sh +if test -d /usr/lpp -a -f /usr/bin/bsh -a -f /usr/bin/uname; then + if test X`/usr/bin/uname -v` = X4; then + avoidksh="to avoid AIX 4's /bin/sh" + newsh=/usr/bin/bsh + fi +fi +?X: On Digital UNIX, /bin/sh may start up buggy /bin/ksh, use sh +if test -f /osf_boot -a -f /usr/sbin/setld; then + if test X`/usr/bin/uname -s` = XOSF1; then + avoidksh="to avoid Digital UNIX' ksh" + newsh=/bin/sh +?X: if BIN_SH is set to 'xpg4', sh will start up ksh + unset BIN_SH + fi +fi +?X: If we are not in ksh and need it, then feed us back to it +case "$inksh/$needksh" in +/[a-z]*) +?X: Clear ENV to avoid any ~/.kshrc that could alias cd or whatever... +?X: Don't use "unset ENV", that is not portable enough + ENV='' + changesh=true + reason="$needksh" + ;; +esac +?X: If we are in ksh and must avoid it, then feed us back to a new shell +case "$inksh/$avoidksh" in +true/[a-z]*) + changesh=true + reason="$avoidksh" + ;; +esac +?X: Warn them if they use ksh on other systems, which are those where +?X: we don't need ksh nor want to avoid it explicitely, yet are using it. +case "$inksh/$needksh-$avoidksh-" in +true/--) + cat </dev/null` +case "$user" in +'') user=`whoami 2>&1`;; +esac +if $contains "^$user\$" ../.config/instruct >/dev/null 2>&1; then + firsttime=false + echo " " + rp='Would you like to see the instructions?' + dflt=n + . ./myread + case "$ans" in + [yY]*) ;; + *) needman=false;; + esac +fi +if $needman; then + cat < package should be installed. If you get +stuck on a question, you may use a ! shell escape to start a subshell or +execute a command. Many of the questions will have default answers in square +brackets; typing carriage return will give you the default. + +On some of the questions which ask for file or directory names you are allowed +to use the ~name construct to specify the login directory belonging to "name", +even if you don't have a shell which knows about that. Questions where this is +allowed will be marked "(~name ok)". + +EOH + rp='' + dflt='Type carriage return to continue' + . ./myread + cat <<'EOH' + +The prompter used in this script allows you to use shell variables and +backticks in your answers. You may use $1, $2, etc... to refer to the words +in the default answer, as if the default line was a set of arguments given to a +script shell. This means you may also use $* to repeat the whole default line, +so you do not have to re-type everything to add something to the default. + +Everytime there is a substitution, you will have to confirm. If there is an +error (e.g. an unmatched backtick), the default answer will remain unchanged +and you will be prompted again. + +If you are in a hurry, you may run 'Configure -d'. This will bypass nearly all +the questions and use the computed defaults (or the previous answers if there +was already a config.sh file). Type 'Configure -h' for a list of options. +You may also start interactively and then answer '& -d' at any prompt to turn +on the non-interactive behaviour for the remainder of the execution. + +EOH + . ./myread + cat <) know how I blew it. + +This installation script affects things in two ways: + +1) it may do direct variable substitutions on some of the files included + in this kit. +2) it builds a config.h file for inclusion in C programs. You may edit + any of these files as the need arises after running this script. + +If you make a mistake on a question, there is no easy way to back up to it +currently. The easiest thing to do is to edit config.sh and rerun all the SH +files. Configure will offer to let you do this before it runs the SH files. + +EOH +?X: In case they played with the prompter... + dflt='Type carriage return to continue' + . ./myread + case "$firsttime" in + true) echo $user >>../.config/instruct;; + esac +fi + diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U new file mode 100644 index 0000000..bf8c056 --- /dev/null +++ b/mcon/U/Loc.U @@ -0,0 +1,381 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Loc.U,v $ +?RCS: Revision 3.0.1.10 1997/02/28 15:04:16 ram +?RCS: patch61: allow users to specify paths on the command line +?RCS: patch61: will now substitute cp for ln if not supported +?RCS: +?RCS: Revision 3.0.1.9 1995/09/25 09:11:24 ram +?RCS: patch59: commented the purpose of the #un-def directive +?RCS: patch59: abort Configure run when mandatory command is missing +?RCS: +?RCS: Revision 3.0.1.8 1995/07/25 13:40:40 ram +?RCS: patch56: now knows about OS/2 platforms +?RCS: +?RCS: Revision 3.0.1.7 1995/01/11 15:13:37 ram +?RCS: patch45: protected "sh -c" within backquotes for Linux and SGI +?RCS: patch45: added path lookup for the 'comm' program +?RCS: +?RCS: Revision 3.0.1.6 1994/10/29 15:56:14 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: patch36: be careful and guard against wildcard searching (ADO) +?RCS: +?RCS: Revision 3.0.1.5 1994/06/20 06:54:55 ram +?RCS: patch30: now locates find +?RCS: +?RCS: Revision 3.0.1.4 1994/05/13 15:18:15 ram +?RCS: patch27: added byacc to the trylist (ADO) +?RCS: patch27: lint lines reformatted (ADO) +?RCS: +?RCS: Revision 3.0.1.3 1994/01/24 14:01:44 ram +?RCS: patch16: added metalint hint on changed PATH variable +?RCS: +?RCS: Revision 3.0.1.2 1993/12/15 08:16:52 ram +?RCS: patch15: now set _test variable when test is built-in +?RCS: patch15: fixed rare cases where echo is not needed +?RCS: +?RCS: Revision 3.0.1.1 1993/09/13 15:47:13 ram +?RCS: patch10: test program not always in /bin/test (WAD) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:05 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit produces a shell script "loc" which can be used to find out +?X: where in a list of directories something is. It then uses loc to +?X: determine the location of commonly used programs. It leaves loc sitting +?X: around for other Configure units to use, but arranges for its demise +?X: at the end of Configure. +?X: +?X: To add a new program to find, add it both to the ?MAKE: line and to either +?X: the loclist or trylist variable. +?X: +?X: I put startsh at the end of the dependency list, in order to avoid the +?X: loading of the spitshell unit before the instructions. +?X: +?MAKE:Loc Mcc awk ar bash bison byacc cat chgrp chmod chown \ + comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ + gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ + make mkdir more mv nm nroff perl pg pmake pr rm rmail sed sendmail \ + shar sleep smail sort submit tail tar tbl tee test touch tr troff \ + uname uniq uuname vi zcat zip: eunicefix n c startsh Instruct Warn +?MAKE: -pick weed $@ %< +?LINT: describe Mcc awk ar bash bison byacc cat chgrp chmod chown \ + comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ + gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ + make mkdir more mv nm nroff perl pg pmake pr rm rmail sed sendmail \ + shar sleep smail sort submit tail tar tbl tee test touch tr troff \ + uname uniq uuname vi zcat zip +?V::pth loclist trylist +?F:./loc +?T:thisthing thing xxx dir file say DJGPP +?T:_test _grep _cp _gmake _egrep _ln _make dflt +?LINT: change PATH +: find out where common programs are +echo " " +echo "Locating common programs..." >&4 +cat <loc +$startsh +case \$# in +0) exit 1;; +esac +thing=\$1 +shift +dflt=\$1 +shift +for dir in \$*; do + case "\$thing" in + .) + if test -d \$dir/\$thing; then + echo \$dir + exit 0 + fi + ;; + *) +?X: Be careful in case thing includes wildcards that might expand to multiple +?X: files. Choose the last one. This happens when searching for shared +?X: libraries with version numbers. How to choose which one we want is +?X: probably an insoluble problem, in general. +?X: Some folks leave things like libc.so.orig around w/o read +?X: permission. A -r test would handle that, but since ./loc is +?X: also used to find executables (which are installed w/o read +?X: permission on SCO ODT 3.0, we can't include the -r test. + for thisthing in \$dir/\$thing; do + : just loop through to pick last item + done + if test -f \$thisthing; then + echo \$thisthing + exit 0 + elif test -f \$thisthing$_exe; then + echo \$thisthing + exit 0 + elif test -f \$dir/\$thing.exe; then + if test -n "$DJGPP"; then + echo \$dir/\$thing.exe + else + : on Eunice apparently + echo \$dir/\$thing + fi + exit 0 + fi + ;; + esac +done +echo \$dflt +exit 1 +EOSC +chmod +x loc +$eunicefix loc +loclist=" +?awk:awk +?cat:cat +?chgrp:chgrp +?chmod:chmod +?chown:chown +?comm:comm +?cp:cp +?echo:echo +?expr:expr +?find:find +?grep:grep +?ls:ls +?mkdir:mkdir +?mv:mv +?rm:rm +?sed:sed +?sleep:sleep +?sort:sort +?tail:tail +?touch:touch +?tr:tr +?uniq:uniq +" +trylist=" +?Mcc:Mcc +?ar:ar +?bash:bash +?bison:bison +?byacc:byacc +?compress:compress +?cpio:cpio +?cpp:cpp +?csh:csh +?date:date +?egrep:egrep +?emacs:emacs +?flex:flex +?gmake:gmake +?gzip:gzip +?inews:inews +?ksh:ksh +?less:less +?line:line +?lint:lint +?ln:ln +?lp:lp +?lpr:lpr +?mail:mail +?mailx:mailx +?make:make +?more:more +?nm:nm +?nroff:nroff +?perl:perl +?pg:pg +?pmake:pmake +?pr:pr +?rmail:rmail +?sendmail:sendmail +?shar:shar +?smail:smail +?submit:submit +?tar:tar +?tbl:tbl +?tee:tee +?test:test +?troff:troff +?uname:uname +?uuname:uuname +?vi:vi +?zcat:zcat +?zip:zip +" +?LINT: set awk ar bash bison byacc cat chgrp chmod chown \ + comm compress cp cpio cpp csh date echo emacs expr find flex \ + gmake gzip grep inews ksh less line lint lp lpr ls mail mailx \ + mkdir more mv nm nroff perl pg pmake pr rm rmail sed sendmail \ + shar sleep smail sort submit tail tar tbl tee touch tr troff \ + uname uniq uuname vi zcat zip +pth=`echo $PATH | sed -e "s/$p_/ /g"` +pth="$pth /lib /usr/lib" +for file in $loclist; do +?X: +?X: Allow them to -Dmake=pmake on the command line for instance... +?X: If the file is not fully qualified, as in -Dmake=pmake, then we +?X: look the for the specified command (pmake here). If they say +?X: -Dmake=/sbin/make for instance, then we make sure the file +?X: exists, or we die... +?X: + eval xxx=\$$file + case "$xxx" in + /*|?:[\\/]*) + if test -f "$xxx"; then + : ok + else + ./warn "no $xxx -- ignoring your setting for $file." + xxx=`./loc $file $file $pth` + fi + ;; + '') xxx=`./loc $file $file $pth`;; + *) xxx=`./loc $xxx $xxx $pth`;; + esac + eval $file=$xxx$_exe + eval _$file=$xxx + case "$xxx" in + /*) + echo $file is in $xxx. + ;; +?X: Under OS/2, we have PC-like paths + ?:[\\/]*) + echo $file is in $xxx. + ;; + *) + echo "I don't know where '$file' is, and my life depends on it." >&4 + echo "Go find a public domain implementation or fix your PATH setting!" >&4 + exit 1 + ;; + esac +done +echo " " +echo "Don't worry if any of the following aren't found..." +say=offhand +for file in $trylist; do +?X: Allow them to -Dmake=pmake on the command line for instance (see above) + eval xxx=\$$file + case "$xxx" in + /*|?:[\\/]*) + if test -f "$xxx"; then + : ok + else + ./warn "no $xxx -- ignoring your setting for $file." + xxx=`./loc $file $file $pth` + fi + ;; + '') xxx=`./loc $file $file $pth`;; + *) xxx=`./loc $xxx $xxx $pth`;; + esac + eval $file=$xxx$_exe + eval _$file=$xxx + case "$xxx" in + /*) + echo $file is in $xxx. + ;; +?X: Under OS/2, we have PC-like paths + ?:[\\/]*) + echo $file is in $xxx. + ;; + *) + echo "I don't see $file out there, $say." + say=either + ;; + esac +done +case "$egrep" in +egrep) + echo "Substituting grep for egrep." + egrep=$grep + _egrep=$_grep + ;; +esac +@if ln +case "$ln" in +ln) + echo "Substituting cp for ln." + ln=$cp + _ln=$_cp + ;; +esac +@end +@if make || gmake +case "$make" in +make) + case "$gmake" in + gmake) + echo "I can't find make or gmake, and my life depends on it." >&4 + echo "Go find a public domain implementation or fix your PATH setting!" >&4 + exit 1 + ;; + esac + ;; +esac +case "$gmake" in +gmake) ;; +*) # We can't have osname yet. + if test -f "/system/gnu_library/bin/ar.pm"; then # Stratus VOS + # Assume that gmake, if found, is definitely GNU make + # and prefer it over the system make. + echo "Substituting gmake for make." + make=$gmake + _make=$_gmake + fi + ;; +esac +@end +case "$test" in +test) + echo "Hopefully test is built into your sh." + ;; +*) + if `sh -c "PATH= test true" >/dev/null 2>&1`; then + echo "Using the test built into your sh." +?X: +?X: We need to set both test and _test, since Oldconfig.U will use the _test +?X: value to systematically restore computed paths, which may be wrong if +?X: we choose to load an old config.sh generated on another platform. +?X: + test=test + _test=test + fi + ;; +esac +?LINT:change n c +case "$echo" in +echo) + echo "Hopefully echo is built into your sh." + ;; +?X: For those rare cases where we don't need $echo... +'') ;; +*) + echo " " +echo "Checking compatibility between $echo and builtin echo (if any)..." >&4 + $echo $n "hi there$c" >foo1 + echo $n "hi there$c" >foo2 + if cmp foo1 foo2 >/dev/null 2>&1; then + echo "They are compatible. In fact, they may be identical." + else + case "$n" in + '-n') n='' c='\c';; + *) n='-n' c='';; + esac + cat <$c" + $echo "*" + fi + $rm -f foo1 foo2 + ;; +esac + diff --git a/mcon/U/Loc_sed.U b/mcon/U/Loc_sed.U new file mode 100644 index 0000000..f61a876 --- /dev/null +++ b/mcon/U/Loc_sed.U @@ -0,0 +1,33 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1996, Andy Dougherty +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?X: This is used in perl.c. +?MAKE:full_sed: sed +?MAKE: -pick add $@ %< +?S:full_sed: +?S: This variable contains the full pathname to 'sed', whether or +?S: not the user has specified 'portability'. This is only used +?S: in the compiled C program, and we assume that all systems which +?S: can share this executable will have the same full pathname to +?S: 'sed.' +?S:. +?X: Yes, I know about the C symbol PORTABLE, but I think sed +?X: is unlikely to move, and I'm too lazy to add all the +?X: #ifdef PORTABLE sections to the perl source. +?X: +?C:LOC_SED: +?C: This symbol holds the complete pathname to the sed program. +?C:. +?H:#define LOC_SED "$full_sed" /**/ +?H:. +: Store the full pathname to the sed program for use in the C program +full_sed=$sed + diff --git a/mcon/U/Magic_h.U b/mcon/U/Magic_h.U new file mode 100644 index 0000000..8e2556c --- /dev/null +++ b/mcon/U/Magic_h.U @@ -0,0 +1,43 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Magic_h.U,v $ +?RCS: Revision 3.0.1.2 1993/11/10 17:32:58 ram +?RCS: patch14: forgot to mention Id in the dependencies +?RCS: +?RCS: Revision 3.0.1.1 1993/10/16 13:46:59 ram +?RCS: patch12: created for ?M: lines support (magic symbols) +?RCS: +?X: +?X: This file ends up producing the confmagic.h include, which is used to +?X: automagically remap some C symbols via cpp redefinitions. +?X: +?X: The file ./Magic_h below contains all the ?M: lines extracted out of all +?X: the units. Metaconfig itself adds the final #endif statement. +?X: Note that this code isn't included into Configure, but must be shipped with. +?X: +?MAKE:Magic_h: Id Config_h +?MAKE: -pick cm_h_weed $@ %< +?MAKE: -pick cm_h_weed $@ ./Magic_h +?LINT:nocomment +/* + * This file was produced by running metaconfig and is intended to be included + * after config.h and after all the other needed includes have been dealt with. + * + * This file may be empty, and should not be edited. Rerun metaconfig instead. + * If you wish to get rid of this magic, remove this file and rerun metaconfig + * without the -M option. + * + * $Id$ + */ + +#ifndef _confmagic_h_ +#define _confmagic_h_ + diff --git a/mcon/U/MailAuthor.U b/mcon/U/MailAuthor.U new file mode 100644 index 0000000..61c226a --- /dev/null +++ b/mcon/U/MailAuthor.U @@ -0,0 +1,192 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Graham Stoney +?RCS: +?RCS: $Log: MailAuthor.U,v $ +?RCS: Revision 3.0.1.5 1997/02/28 15:04:41 ram +?RCS: patch61: added support for src.U +?RCS: +?RCS: Revision 3.0.1.4 1994/08/29 16:05:09 ram +?RCS: patch32: avoid message sending if they said no previously +?RCS: +?RCS: Revision 3.0.1.3 1993/10/16 13:47:30 ram +?RCS: patch12: now makes sure user-specified address is in Internet format +?RCS: +?RCS: Revision 3.0.1.2 1993/09/13 15:48:49 ram +?RCS: patch10: reverted to original intent by the Author himself +?RCS: +?RCS: Revision 3.0.1.1 1993/08/27 14:38:38 ram +?RCS: patch7: now prompts user for its e-mail address +?RCS: patch7: no longer silent when mail has been sent +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:06 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?RCS: +?X: +?X: This unit asks the user to please send a message to the author. +?X: To force inclusion of this unit, you must add it's name to the +?X: dependancies on the MAKE line in your private copy of End.U. +?X: This allows a smart mailagent program to automatically let users know +?X: when their package is out of date, and to allow users to be notified of +?X: any future patches. +?X: +?MAKE:MailAuthor mailpatches notifypatches usermail: test cat mailer \ + package Myread patchlevel baserev rm rsrc Oldconfig Configdir +?MAKE: -pick wipe $@ %< +?S:mailpatches: +?S: Indicates whether the user would like future patches to be mailed +?S: directly to them. +?S:. +?S:notifypatches: +?S: Indicates whether the user would like notification of future patches +?S: mailed to them. +?S:. +?S:usermail: +?S: This variable is used internally by Configure to keep track of the +?S: user e-mail address, where notifications or patches should be sent. +?S: A '-' value means the return address will be extracted by parsing +?S: the mail headers. +?S:. +?T:opt mailpatches notifypatches atsh status +: notify author that his package is used +if $test -f ../.config/mailauthor && + cmp $rsrc/patchlevel.h ../.config/mailauthor >/dev/null 2>&1 +then + status="say that you're using $package"; + case "$mailpatches" in + true) status='have patches mailed to you as they are issued';; + esac + case "$notifypatches" in + true) status='be notified when new patches are issued';; + esac + $cat <) mail to +$status. If you wish, you may modify +your previous request by sending a new mail with different options. + +EOM + rp='Should I send a status update to ?' + dflt=n +else + $cat <..." >&4 +?X: Bizarre hack here. We can't just put @SH in the hereis lines below, because +?X: metaconfig will interpret it as a command, and there's no quoting mechanism. +?X: Do it via a variable instead. + atsh='@SH' + $mailer </dev/null 2>&1 +Subject: Command +Precedence: junk +To: + +$atsh package $usermail $package $baserev $patchlevel$opt +EOM + $rm -f ../.config/mailauthor ../.config/nomail + cp $rsrc/patchlevel.h ../.config/mailauthor + ;; +*) + case "$dflt" in + "y") + echo "Oh well, maybe next time." + cp /dev/null ../.config/nomail + ;; + esac + ;; +esac + diff --git a/mcon/U/MailList.U b/mcon/U/MailList.U new file mode 100644 index 0000000..e9fb039 --- /dev/null +++ b/mcon/U/MailList.U @@ -0,0 +1,82 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Graham Stoney +?RCS: +?RCS: $Log: MailList.U,v $ +?RCS: Revision 3.0.1.1 1994/01/24 14:01:49 ram +?RCS: patch16: created +?RCS: +?RCS: +?X: +?X: This unit offers the user the option of subscribing to the mailing +?X: list. To force inclusion of this unit, you must add it's name to the +?X: dependancies on the MAKE line in your private copy of End.U. +?X: The address of the mailing list server must be set via a "list_request=..." +?X: entry in the .package file. This is usually done by running packinit and +?X: answering the proper questions. +?X: +?MAKE:MailList: cat mailer package Myread cf_name cf_email +?MAKE: -pick wipe $@ %< +?T:list_request list_sub list_unsub list_name +?X: +?X: The cf_name dependency is used through list_sub when the mailing list +?X: manager happens to be listserv, whereas cf_email is used whith majordomo +?X: or when the mailing list request address is scanned by a human. Since +?X: they do not appear within the unit itself, we need a lint hint. +?X: +?LINT:use cf_name cf_email +: offer to join the mailing list +list_request='<$list_request>' +list_sub="<$list_sub>" +list_unsub="<$list_unsub>" +list_name="<$list_name>" +$cat <&4 + $mailer $list_request </dev/null 2>&1 +Precedence: junk +To: $list_request + +$list_sub +EOM + ;; +[uU]*) echo "Sending mail to unsubscribe you from the $list_name list..." >&4 + $mailer $list_request </dev/null 2>&1 +Precedence: junk +To: $list_request + +$list_unsub +EOM + ;; +esac + diff --git a/mcon/U/Mkdirp.U b/mcon/U/Mkdirp.U new file mode 100644 index 0000000..bad6081 --- /dev/null +++ b/mcon/U/Mkdirp.U @@ -0,0 +1,51 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Extract.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 14:58:52 ram +?RCS: patch61: added support for src.U +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 15:51:46 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:52 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit produces a shell script which can launched to create a +?X: directory path like "mkdir -p" would do. +?X: +?MAKE:Mkdirp: eunicefix startsh +?MAKE: -pick add $@ %< +?F:./mkdirp +?T:name create file +: script used to emulate mkdir -p +cat >mkdirp <>mkdirp <<'EOS' +name=$1; +create=""; +while test $name; do + if test ! -d "$name"; then + create="$name $create" + name=`echo $name | sed -e "s|^[^/]*$||"` + name=`echo $name | sed -e "s|\(.*\)/.*|\1|"` + else + name="" + fi +done +for file in $create; do + mkdir $file +done +EOS +chmod +x mkdirp +$eunicefix mkdirp + diff --git a/mcon/U/Mksymlinks.U b/mcon/U/Mksymlinks.U new file mode 100644 index 0000000..92318a8 --- /dev/null +++ b/mcon/U/Mksymlinks.U @@ -0,0 +1,90 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Copyright (c) 2000, Jarkko Hietaniemi +?RCS: +?X: +?X: This unit allows the duplication of the source tree to the current +?X: directory via symbolic links. This must be requested explicitly +?X: by them issuing a -Dmksymlinks on the command line. +?X: +?MAKE:Mksymlinks: Mkdirp lns issymlink src rsrc pkgsrc +?MAKE: -pick add $@ %< +?F:!UU +?T: dir filename tmppwd filelist +?LINT:extern mksymlinks +@if {test -f ../MANIFEST} +: Duplicate the tree with symbolic links if -Dmksymlinks was supplied +case "$mksymlinks" in +$define|true|[yY]*) + echo " " + case "$src" in + ''|'.') echo "Cannot create symlinks in the original directory." >&4 + exit 1 + ;; + *) case "$lns:$issymlink" in + *"ln"*" -s:"*"test -"?) + echo "Creating the symbolic links..." >&4 + echo "(First creating the subdirectories...)" >&4 + cd .. + awk '{print $1}' $src/MANIFEST | grep / | sed 's:/[^/]*$::' | \ + sort -u | while true + do + read dir + test -z "$dir" && break + ./UU/mkdirp $dir 2>/dev/null + if test -d $dir; then + : ok + else + echo "Failed to create '$dir'. Aborting." >&4 + exit 1 + fi + done + echo "(Now creating the symlinks...)" >&4 + awk '{print $1}' $src/MANIFEST | while true; do + read filename + test -z "$filename" && break + if test -f $filename; then + if $issymlink $filename; then + rm -f $filename + fi + fi + if test -f $filename; then + echo "$filename already exists, not symlinking." + else +?X: Note that the following works because "$pkgsrc" is absolute + ln -s $pkgsrc/$filename $filename + fi + done +?X: Check that everything was correctly copied + echo "(Checking current directory...)" >&4 + cd UU + awk '$1 !~ /PACK[A-Z]+/ {print $1}' "$rsrc/MANIFEST" | \ + (split -l 50 2>/dev/null || split -50) + rm -f missing + tmppwd=`pwd` + for filelist in x??; do + (cd ..; ls `cat "$tmppwd/$filelist"` \ + >/dev/null 2>>"$tmppwd/missing") + done + if test -s missing; then + echo "Failed duplication of source tree. Aborting." >&4 + exit 1 + fi + ;; + *) echo "(I cannot figure out how to do symbolic links, ignoring!)" >&4 + ;; + esac + ;; + esac + ;; +esac + +@end diff --git a/mcon/U/Myinit.U b/mcon/U/Myinit.U new file mode 100644 index 0000000..0ab97f4 --- /dev/null +++ b/mcon/U/Myinit.U @@ -0,0 +1,26 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Myinit.U,v $ +?RCS: Revision 3.0.1.1 1994/10/31 09:47:29 ram +?RCS: patch44: leading comment states this unit comes before option processing +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:07 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: If you want to initialize any default values, copy this unit to your +?X: personal U directory and add the assignments to the end. This file +?X: is included after variables are initialized but before any old +?X: config.sh file is read in and before any Configure switch processing. +?X: +?MAKE:Myinit: Init +?MAKE: -pick add $@ %< +?LINT: nocomment diff --git a/mcon/U/Myread.U b/mcon/U/Myread.U new file mode 100644 index 0000000..330f503 --- /dev/null +++ b/mcon/U/Myread.U @@ -0,0 +1,199 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Myread.U,v $ +?RCS: Revision 3.0.1.6 1997/02/28 15:05:39 ram +?RCS: patch61: myread script now starts with a "startsh" +?RCS: patch61: miscellaneous fixes +?RCS: +?RCS: Revision 3.0.1.5 1995/01/11 15:14:22 ram +?RCS: patch45: added & escape allowing user to turn on -d from the prompt +?RCS: +?RCS: Revision 3.0.1.4 1994/10/31 09:48:04 ram +?RCS: patch44: added Options to the MAKE line since it's no longer in Init.U +?RCS: +?RCS: Revision 3.0.1.3 1994/10/29 15:56:20 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0.1.2 1993/08/30 08:57:59 ram +?RCS: patch8: added new visible 'nostick' symbol, mainly for Finish.U +?RCS: +?RCS: Revision 3.0.1.1 1993/08/27 14:39:20 ram +?RCS: patch7: now sticks to the question when no default and empty answer +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:08 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit produces a bit of shell code that must be dotted in in order +?X: to do a read. It allows for shell escapes, default assignment and +?X: parameter evaluation. +?X: +?X: To use this unit, $rp and $dflt must hold the question and the +?X: default answer. The question will be printed by the script itself. +?X: Neither $rp nor $dflt is altered by the script. +?X: +?X: The myread script will stick to the question if no default is proposed +?X: and the user answer is empty, which prevents mistakes. However, at the +?X: end of Configure, there is an exception to this rule (Finish.U) where we +?X: set nostick to a non-empty value to allow the Return key to play its role! +?X: +?MAKE:Myread: Options startsh n c trnl +?MAKE: -pick add $@ %< +?V:ans:dflt rp nostick +?F:./myread +?T:COLUMNS xxxm rp dflt answ aok myecho +?LINT:change fastread +?X: Some shells (Ultrix) do not understand ${COLUMNS:-80}, sigh! +: compute the number of columns on the terminal for proper question formatting +case "$COLUMNS" in +'') COLUMNS='80';; +esac + +: set up the echo used in my read +?X: +?X: This variable is intended to be eval'ed. It will echo the two +?X: variables $rp and $dflt (provided this latter has a non null value). +?X: It is mainly used by the myread script to echo the questions. +?X: +?X: The $n and $c below are substituted before Loc does its silly echo check +?X: so don't put a $ on the echo below so we get builtin, even if $echo is +?X: pointing to /bin/echo. +?X: +myecho="case \"\$xxxm\" in +'') echo $n \"\$rp $c\" >&4;; +*) case \"\$rp\" in + '') echo $n \"[\$xxxm] $c\";; + *) + if test \`echo \"\$rp [\$xxxm] \" | wc -c\` -ge $COLUMNS; then + echo \"\$rp\" >&4 + echo $n \"[\$xxxm] $c\" >&4 + else + echo $n \"\$rp [\$xxxm] $c\" >&4 + fi + ;; + esac;; +esac" + +: now set up to do reads with possible shell escape and default assignment +cat <myread +$startsh +?X: +?X: Save value of default -- do not alter original in case of eval +?X: +xxxm=\$dflt +$myecho +?X: +?X: If there is no default, then stop, regardless of the value in fastread. +?X: In silent mode, no new-line is to be echoed if the question is empty, +?X: since this is used to wait for the "return" key. +?X: +ans='!' +case "\$fastread" in +yes) case "\$dflt" in + '') ;; + *) ans=''; + case "\$silent-\$rp" in + true-) ;; + *) echo " " >&4;; + esac;; + esac;; +*) case "\$silent" in + true) case "\$rp" in + '') ans='';; + esac;; + esac;; +esac +while expr "X\$ans" : "X!" >/dev/null; do + read answ +?X: +?X: Run 'eval' on the answer, in order to do variable substitution, in case +?X: the user types $HOME or $WHATEVER. Variables must be evaluated now. +?X: Typing '\$HOME' won't currently prevent from substitution -- use '\\$HOME' +?X: The $1 .. $9 and $*, as well as $@, are available to refer to the +?X: default value. +?X: + set x \$xxxm + shift + aok=''; eval "ans=\\"\$answ\\"" && aok=y + case "\$answ" in +?X: +?X: Use "!" and not a plain ! because of a bug in BSD 4.4 shell +?X: (reported by Wayne Davison) +?X: We must handle the shell escapes before dealing with possible variable +?X: substitution, since the shell we're launching in that case will be able +?X: to do it as well as we can -- RAM, 15/03/96 +?X + "!") + sh 1>&4 + echo " " + $myecho + ;; + !*) + set x \`expr "X\$ans" : "X!\(.*\)\$"\` + shift + sh 1>&4 -c "\$*" + echo " " + $myecho + ;; + "\$ans") + case "\$ans" in +?X: +?X: Answers starting with & are hooks allowing to dynamically turn on/off +?X: some Configure options. That's for the future. -- RAM, 09/01/95 +?X: Today, we only recognize '& -d' to mean 'go on as if Configure -d, which +?X: is a hardwired behaviour compatible with our general scheme. +?X: + \\&*) + set x \`expr "X\$ans" : "X&\(.*\)\$"\` + shift + case "\$1" in + -d) + fastread=yes + echo "(OK, I'll run with -d after this question.)" >&4 + ;; + -*) + echo "*** Sorry, \$1 not supported yet." >&4 + ;; + esac + $myecho + ans=! + ;; + esac;; + *) + case "\$aok" in + y) + echo "*** Substitution done -- please confirm." + xxxm="\$ans" + ans=\`echo $n "\$ans$c" | tr '$trnl' ' '\` + xxxm="\$ans" + ans=! + ;; + *) + echo "*** Error -- try again." + ans=! + ;; + esac + $myecho + ;; + esac +?X: Stick in myread if no default answer and nothing was answered + case "\$ans\$xxxm\$nostick" in + '') + ans=! + $myecho + ;; + esac +done +case "\$ans" in +'') ans="\$xxxm";; +esac +EOSC + diff --git a/mcon/U/Nothing.U b/mcon/U/Nothing.U new file mode 100644 index 0000000..fe40801 --- /dev/null +++ b/mcon/U/Nothing.U @@ -0,0 +1,19 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Nothing.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:09 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: The purpose of this file is to supply an empty target for the private +?X: Makefile built by metaconfig to order the units. +?X: +?MAKE:Nothing: Head diff --git a/mcon/U/Null.U b/mcon/U/Null.U new file mode 100644 index 0000000..bb218b0 --- /dev/null +++ b/mcon/U/Null.U @@ -0,0 +1,20 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Null.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:10 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit ends up producing shell code to set all variables to ''. This +?X: probably isn't necessary, but I'm paranoid. About certain things. +?X: +?MAKE:Null: Head +?MAKE: -pick add.Null $@ %< diff --git a/mcon/U/Obsol_h.U b/mcon/U/Obsol_h.U new file mode 100644 index 0000000..1061aa9 --- /dev/null +++ b/mcon/U/Obsol_h.U @@ -0,0 +1,28 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Obsol_h.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:11 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This file is prepended to .MT/Obsol_h if that file is not empty. That file +?X: contains the necessary mappings of new symbols to obsolete ones. +?X: +?MAKE:Obsol_h: +?MAKE: -pick prepend $@ ./Obsol_h +?LINT:nocomment +/* + * The following symbols are obsolete. They are mapped to the the new + * symbols only to ease the transition process. The sources should be + * updated so as to use the new symbols only, as the support for these + * obsolete symbols may end without notice. + */ + diff --git a/mcon/U/Obsol_sh.U b/mcon/U/Obsol_sh.U new file mode 100644 index 0000000..0a976bf --- /dev/null +++ b/mcon/U/Obsol_sh.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Obsol_sh.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:11 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This file is prepended to .MT/Obsol_sh if that file is not empty. That file +?X: contains the necessary mappings of new symbols to obsolete ones. +?X: +?MAKE:Obsol_sh: +?MAKE: -pick prepend $@ ./Obsol_sh +?LINT:nocomment +# +# The following symbols are obsolete. They are mapped to the the new +# symbols only to ease the transition process. The sources should be +# updated so as to use the new symbols only, since supporting of those +# obsolete symbols may end without notice. +# diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U new file mode 100644 index 0000000..9e079dd --- /dev/null +++ b/mcon/U/Oldconfig.U @@ -0,0 +1,687 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Oldconfig.U,v $ +?RCS: Revision 3.0.1.10 1997/02/28 15:06:39 ram +?RCS: patch61: added support for src.U +?RCS: patch61: new OSNAME define +?RCS: patch61: can now sense new OSes +?RCS: +?RCS: Revision 3.0.1.9 1995/07/25 13:40:51 ram +?RCS: patch56: now knows about OS/2 platforms +?RCS: +?RCS: Revision 3.0.1.8 1995/05/12 12:04:18 ram +?RCS: patch54: config.sh reload logic now knows about new -K switch +?RCS: patch54: cleaned up and extended osvers for DEC OSF/1 (ADO) +?RCS: patch54: added MachTen detection (ADO) +?RCS: +?RCS: Revision 3.0.1.7 1995/02/15 14:13:41 ram +?RCS: patch51: adapted osvers computation for AIX (ADO) +?RCS: +?RCS: Revision 3.0.1.6 1995/01/30 14:27:15 ram +?RCS: patch49: unit Options.U now exports file optdef.sh, not a variable +?RCS: patch49: update code for myuname changed (WED) +?RCS: +?RCS: Revision 3.0.1.5 1995/01/11 15:15:36 ram +?RCS: patch45: added quotes around the INITPROG variable (ADO) +?RCS: patch45: allows variable overriding after config file loading +?RCS: +?RCS: Revision 3.0.1.4 1994/10/29 15:57:05 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: patch36: merged with the version used for perl5's Configure (ADO) +?RCS: +?RCS: Revision 3.0.1.3 1994/05/06 14:24:17 ram +?RCS: patch23: added support for osf1 hints +?RCS: patch23: new support for solaris and i386 systems (ADO) +?RCS: +?RCS: Revision 3.0.1.2 1994/01/24 14:05:02 ram +?RCS: patch16: added post-processing on myuname for Xenix targets +?RCS: patch16: message proposing config.sh defaults made consistent +?RCS: +?RCS: Revision 3.0.1.1 1993/09/13 15:56:32 ram +?RCS: patch10: force use of config.sh when -d option is used (WAD) +?RCS: patch10: complain about non-existent hint files (WAD) +?RCS: patch10: added Options dependency for fastread variable +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:12 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit tries to remember what we did last time we ran Configure, mostly +?X: for the sake of setting defaults. +?X: +?MAKE:Oldconfig hint myuname osname osvers: Instruct Myread Checkcc \ + Mksymlinks Loc Options Tr src trnl ln uname sh awk sed test cat grep \ + rm lns tr n c contains targetarch +?MAKE: -pick wipe $@ %< +?S:myuname: +?S: The output of 'uname -a' if available, otherwise the hostname. On Xenix, +?S: pseudo variables assignments in the output are stripped, thank you. The +?S: whole thing is then lower-cased. +?S:. +?S:hint: +?S: Gives the type of hints used for previous answers. May be one of +?S: "default", "recommended" or "previous". +?S:. +?S:osname: +?S: This variable contains the operating system name (e.g. sunos, +?S: solaris, hpux, etc.). It can be useful later on for setting +?S: defaults. Any spaces are replaced with underscores. It is set +?S: to a null string if we can't figure it out. +?S:. +?S:osvers: +?S: This variable contains the operating system version (e.g. +?S: 4.1.3, 5.2, etc.). It is primarily used for helping select +?S: an appropriate hints file, but might be useful elsewhere for +?S: setting defaults. It is set to '' if we can't figure it out. +?S: We try to be flexible about how much of the version number +?S: to keep, e.g. if 4.1.1, 4.1.2, and 4.1.3 are essentially the +?S: same for this package, hints files might just be os_4.0 or +?S: os_4.1, etc., not keeping separate files for each little release. +?S:. +?C:OSNAME: +?C: This symbol contains the name of the operating system, as determined +?C: by Configure. You shouldn't rely on it too much; the specific +?C: feature tests from Configure are generally more reliable. +?C:. +?C:OSVERS: +?C: This symbol contains the version of the operating system, as determined +?C: by Configure. You shouldn't rely on it too much; the specific +?C: feature tests from Configure are generally more reliable. +?C:. +?H:#define OSNAME "$osname" /**/ +?H:#define OSVERS "$osvers" /**/ +?H:. +?F:!config.sh +?T:tmp tmp_n tmp_c tmp_sh file +?T:xxxxfile xxxfile xxfile xfile hintfile newmyuname +?T:tans _ isesix INITPROG DJGPP has_uname +?D:osname='' +?LINT:change n c sh +?LINT:extern hostarch +?LINT:change hostarch +: Determine the name of the machine +myuname=`$uname -a 2>/dev/null` +$test -z "$myuname" && myuname=`hostname 2>/dev/null` +?X: Special mention for Xenix, whose 'uname -a' gives us output like this: +?X: sysname=XENIX +?X: nodename=whatever +?X: release=2.3.2 .. etc... +?X: Therefore, we strip all this variable assignment junk and remove all the +?X: new lines to keep the myuname variable sane... --RAM +myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \ + ./tr '[A-Z]' '[a-z]' | $tr $trnl ' '` +?X: Save the value we just computed to reset myuname after we get done here. +newmyuname="$myuname" +$test -f "$uname$_exe" && has_uname=y + +: Guessing of the OS name -- half the following guesses are probably wrong... +: If you have better tests or hints, please send them to the metaconfig +: authors and to +$test -f /irix && osname=irix +$test -f /xenix && osname=sco_xenix +$test -f /dynix && osname=dynix +$test -f /dnix && osname=dnix +$test -f /lynx.os && osname=lynxos +$test -f /unicos && osname=unicos && osvers=`$uname -r` +$test -f /unicosmk && osname=unicosmk && osvers=`$uname -r` +$test -f /unicosmk.ar && osname=unicosmk && osvers=`$uname -r` +$test -f /bin/mips && /bin/mips && osname=mips +$test -d /NextApps && set X `hostinfo | $grep 'NeXT Mach.*:' | \ + $sed -e 's/://' -e 's/\./_/'` && osname=next && osvers=$4 +$test -d /usr/apollo/bin && osname=apollo +$test -f /etc/saf/_sactab && osname=svr4 +$test -d /usr/include/minix && osname=minix +$test -f /system/gnu_library/bin/ar.pm && osname=vos +if $test -d /MachTen -o -d /MachTen_Folder; then +?X: MachTen uname -a output looks like +?X: xxx 4 0.0 Macintosh +?X: MachTen /sbin/version output looks like +?X: MachTen 4.0 Mon Aug 28 10:18:00 1995 +?X: MachTen 3.x had the 'version' command in /usr/etc/version. + osname=machten + if $test -x /sbin/version; then + osvers=`/sbin/version | $awk '{print $2}' | + $sed -e 's/[A-Za-z]$//'` + elif $test -x /usr/etc/version; then + osvers=`/usr/etc/version | $awk '{print $2}' | + $sed -e 's/[A-Za-z]$//'` + else + osvers="$2.$3" + fi +fi +$test -f /sys/posix.dll && + $test -f /usr/bin/what && + set X `/usr/bin/what /sys/posix.dll` && + $test "$3" = UWIN && + osname=uwin && + osvers="$5" +?X: If we have uname, we already computed a suitable uname -a output, correctly +?X: formatted for Xenix, and it lies in $myuname. +if $test "X$has_uname" != X; then + set X $myuname + shift + case "$5" in + fps*) osname=fps ;; + mips*) + case "$4" in + umips) osname=umips ;; + *) osname=mips ;; + esac;; + [23]100) osname=mips ;; + next*) osname=next ;; +?X: Interactive Unix. + i386*) + tmp=`/bin/uname -X 2>/dev/null|awk '/3\.2v[45]/{ print $(NF) }'` + if $test "$tmp" != "" -a "$3" = "3.2" -a -f '/etc/systemid'; then + osname='sco' + osvers=$tmp + elif $test -f /etc/kconfig; then + osname=isc + if $test "$lns" = "$ln -s"; then + osvers=4 + elif $contains _SYSV3 /usr/include/stdio.h > /dev/null 2>&1 ; then + osvers=3 + elif $contains _POSIX_SOURCE /usr/include/stdio.h > /dev/null 2>&1 ; then + osvers=2 + fi + fi + tmp='' + ;; +?X: MS-DOS djgpp uname -a output looks like: +?X: ms-dos xxx 6 22 pc +?X: $1 is the "dos flavor" (need not be "ms-dos"). +?X: $2 is the node name +?X: $3 and $4 are version/subversion +?X: $5 is always "pc", but that might not be unique to DJGPP. +?X: (e.g. Solaris_x86 has $5 = i86pc, which doesn't actually conflict, +?X: but it's close enought that I can easily imagine other vendors also +?X: using variants of pc* in $5.) +?X: The "DJGPP" environment variable is always set when djgpp is active. + pc*) + if $test -n "$DJGPP"; then + osname=dos + osvers=djgpp + fi + ;; + esac + case "$1" in + aix) osname=aix +?X: aix 4.1 uname -a output looks like +?X: AIX foo 1 4 000123456789 +?X: where $4 is the major release number and $3 is the (minor) version. +?X: More detail on the version is available with the oslevel command. +?X: in 3.2.x, it output a string (see case statements below). In 4.1, +?X: it puts out something like 4.1.1.0 + tmp=`( (oslevel) 2>/dev/null || echo "not found") 2>&1` + case "$tmp" in + 'not found') osvers="$4"."$3" ;; + '<3240'|'<>3240') osvers=3.2.0 ;; + '=3240'|'>3240'|'<3250'|'<>3250') osvers=3.2.4 ;; + '=3250'|'>3250') osvers=3.2.5 ;; + *) osvers=$tmp;; + esac + ;; + bsd386) osname=bsd386 + osvers=`$uname -r` + ;; + cygwin*) osname=cygwin + osvers="$3" + ;; + *dc.osx) osname=dcosx + osvers="$3" + ;; + dnix) osname=dnix + osvers="$3" + ;; + domainos) osname=apollo + osvers="$3" + ;; + dgux) osname=dgux + osvers="$3" + ;; +?X: uname -a returns +?X: DYNIX/ptx xxx 4.0 V4.1.2 i386 + dynixptx*) osname=dynixptx + osvers=`echo "$4"|sed 's/^v//'` + ;; + freebsd) osname=freebsd + osvers="$3" ;; + genix) osname=genix ;; +?X: HP-UX uname -a gives something like +?X: HP-UX foobar B.10.20 A 9000/735 2016483812 two-user license +?X: Preserve the full 10.20 string instead of the previous plain '10'. +?X: Thanks to Graham Barr. --AD 6/30/1998 + hp*) osname=hpux + osvers=`echo "$3" | $sed 's,.*\.\([0-9]*\.[0-9]*\),\1,'` + ;; + irix*) osname=irix + case "$3" in + 4*) osvers=4 ;; + 5*) osvers=5 ;; + *) osvers="$3" ;; + esac + ;; + linux) osname=linux + case "$3" in + *) osvers="$3" ;; + esac + ;; + MiNT) osname=mint + ;; + netbsd*) osname=netbsd + osvers="$3" + ;; + news-os) osvers="$3" + case "$3" in + 4*) osname=newsos4 ;; + *) osname=newsos ;; + esac + ;; + next*) osname=next ;; + nonstop-ux) osname=nonstopux ;; + openbsd) osname=openbsd + osvers="$3" + ;; + POSIX-BC | posix-bc ) osname=posix-bc + osvers="$3" + ;; + powerux | power_ux | powermax_os | powermaxos | \ + powerunix | power_unix) osname=powerux + osvers="$3" + ;; + qnx) osname=qnx + osvers="$4" + ;; + solaris) osname=solaris + case "$3" in + 5*) osvers=`echo $3 | $sed 's/^5/2/g'` ;; + *) osvers="$3" ;; + esac + ;; + sunos) osname=sunos + case "$3" in + 5*) osname=solaris + osvers=`echo $3 | $sed 's/^5/2/g'` ;; + *) osvers="$3" ;; + esac + ;; + titanos) osname=titanos + case "$3" in + 1*) osvers=1 ;; + 2*) osvers=2 ;; + 3*) osvers=3 ;; + 4*) osvers=4 ;; + *) osvers="$3" ;; + esac + ;; + ultrix) osname=ultrix + osvers="$3" + ;; + osf1|mls+) case "$5" in + alpha) +?X: DEC OSF/1 myuname -a output looks like: osf1 xxxx t3.2 123.4 alpha +?X: where the version number can be something like [xvt]n.n + osname=dec_osf +?X: sizer knows the minor minor version: the letter + osvers=`sizer -v | awk '{print $3}' | \ + ./tr '[A-Z]' '[a-z]' | sed 's/^[xvt]//'` + case "$osvers" in + [1-9].[0-9]*) ;; + *) osvers=`echo "$3" | sed 's/^[xvt]//'` ;; + esac + ;; + hp*) osname=hp_osf1 ;; + mips) osname=mips_osf1 ;; +?X: hp and mips were unsupported Technology Releases -- ADO, 24/10/94 + esac + ;; + unixware) osname=svr5 + osvers="$4" + ;; + uts) osname=uts + osvers="$3" + ;; + vos) osvers="$3" + ;; + $2) case "$osname" in + *isc*) ;; + *freebsd*) ;; + svr*) + : svr4.x or possibly later + case "svr$3" in + ${osname}*) + osname=svr$3 + osvers=$4 + ;; + esac + case "$osname" in + svr4.0) + : Check for ESIX + if $test -f /stand/boot ; then + eval `$grep '^INITPROG=[a-z/0-9]*$' /stand/boot` + if $test -n "$INITPROG" -a -f "$INITPROG"; then + isesix=`strings -a $INITPROG | \ + $grep 'ESIX SYSTEM V/386 Release 4.0'` + if $test -n "$isesix"; then + osname=esix4 + fi + fi + fi + ;; + esac + ;; + *) if $test -f /etc/systemid; then + osname=sco + set `echo $3 | $sed 's/\./ /g'` $4 + if $test -f $src/hints/sco_$1_$2_$3.sh; then + osvers=$1.$2.$3 + elif $test -f $src/hints/sco_$1_$2.sh; then + osvers=$1.$2 + elif $test -f $src/hints/sco_$1.sh; then + osvers=$1 + fi + else + case "$osname" in + '') : Still unknown. Probably a generic Sys V. + osname="sysv" + osvers="$3" + ;; + esac + fi + ;; + esac + ;; + *) case "$osname" in + '') : Still unknown. Probably a generic BSD. + osname="$1" + osvers="$3" + ;; + esac + ;; + esac +else +?X: Try to identify sony's NEWS-OS (BSD unix) + if $test -f /vmunix -a -f $src/hints/news_os.sh; then + (what /vmunix | UU/tr '[A-Z]' '[a-z]') > UU/kernel.what 2>&1 + if $contains news-os UU/kernel.what >/dev/null 2>&1; then + osname=news_os + fi + $rm -f UU/kernel.what +?X: Maybe it's OS/2 or DOS or something similar + elif $test -d c:/.; then + set X $myuname + osname=os2 + osvers="$5" + fi +fi + +: Try to determine whether config.sh was made on this system +case "$config_sh" in +'') +?X: indentation wrong on purpose--RAM +dflt=n +case "$knowitall" in +'') + if test -f ../config.sh; then + if $contains myuname= ../config.sh >/dev/null 2>&1; then + eval "`$grep myuname= ../config.sh`" + fi + if test "X$myuname" = "X$newmyuname"; then + dflt=y + fi + fi + ;; +*) dflt=y;; +esac + +: Get old answers from config file if it was generated on the same system +hint=default +if $test -f ../config.sh; then + echo " " + rp="I see a config.sh file. Shall I use it to set the defaults?" + . ./myread + case "$ans" in + n*|N*) echo "OK, I'll ignore it." + mv ../config.sh ../config.sh.old + myuname="$newmyuname" + ;; + *) echo "Fetching default answers from your old config.sh file..." >&4 + tmp_n="$n" + tmp_c="$c" + tmp_sh="$sh" + . ../config.sh + cp ../config.sh . + n="$tmp_n" + c="$tmp_c" + hint=previous + ;; + esac +fi +?X: remember, case indentation is wrong--RAM +;; +*) + echo " " + echo "Fetching default answers from $config_sh..." >&4 + tmp_n="$n" + tmp_c="$c" + tmp_sh="$sh" + cd .. +?X: preserve symbolic links, if any + cp $config_sh config.sh 2>/dev/null + chmod +w config.sh + . ./config.sh + cd UU + cp ../config.sh . + n="$tmp_n" + c="$tmp_c" + hint=previous + ;; +esac +?X: Older versions did not always set $sh. +case "$sh" in +'') sh="$tmp_sh" ;; +esac +$test "$override" && . ./optdef.sh + +: Restore computed paths +for file in $loclist $trylist; do + eval $file="\$_$file" +done + +. ./checkcc +?X: Cross-compiling support +case "$targetarch" in +'') ;; +*) hostarch=$osname + osname=`echo $targetarch|sed 's,^[^-]*-,,'` + osvers='' + ;; +esac + +@if {test -d ../hints} +: Offer them some hints based on their OS +cd .. +?X: Since we are now at the root of the source tree, we must use $src +?X: to access the sources and not $rsrc. See src.U for details... +if $test ! -f config.sh; then + $cat <&4 + dflt='' + + : Now look for a hint file osname_osvers, unless one has been + : specified already. + case "$hintfile" in + ''|' ') + file=`echo "${osname}_${osvers}" | $sed -e 's%\.%_%g' -e 's%_$%%'` + : Also try without trailing minor version numbers. + xfile=`echo $file | $sed -e 's%_[^_]*$%%'` + xxfile=`echo $xfile | $sed -e 's%_[^_]*$%%'` + xxxfile=`echo $xxfile | $sed -e 's%_[^_]*$%%'` + xxxxfile=`echo $xxxfile | $sed -e 's%_[^_]*$%%'` + case "$file" in + '') dflt=none ;; + *) case "$osvers" in + '') dflt=$file + ;; + *) if $test -f $src/hints/$file.sh ; then + dflt=$file + elif $test -f $src/hints/$xfile.sh ; then + dflt=$xfile + elif $test -f $src/hints/$xxfile.sh ; then + dflt=$xxfile + elif $test -f $src/hints/$xxxfile.sh ; then + dflt=$xxxfile + elif $test -f $src/hints/$xxxxfile.sh ; then + dflt=$xxxxfile + elif $test -f "$src/hints/${osname}.sh" ; then + dflt="${osname}" + else + dflt=none + fi + ;; + esac + ;; + esac + if $test -f Policy.sh ; then + case "$dflt" in + *Policy*) ;; + none) dflt="Policy" ;; + *) dflt="Policy $dflt" ;; + esac + fi + ;; + *) + dflt=`echo $hintfile | $sed 's/\.sh$//'` + ;; + esac + + if $test -f Policy.sh ; then + $cat <> UU/config.sh + elif $test -f $src/hints/$file.sh; then + . $src/hints/$file.sh + $cat $src/hints/$file.sh >> UU/config.sh + elif $test X"$tans" = X -o X"$tans" = Xnone ; then + : nothing + else + : Give one chance to correct a possible typo. + echo "$file.sh does not exist" + dflt=$file + rp="hint to use instead?" + . UU/myread + for file in $ans; do + if $test -f "$src/hints/$file.sh"; then + . $src/hints/$file.sh + $cat $src/hints/$file.sh >> UU/config.sh + elif $test X$ans = X -o X$ans = Xnone ; then + : nothing + else + echo "$file.sh does not exist -- ignored." + fi + done + fi + done + + hint=recommended + : Remember our hint file for later. + if $test -f "$src/hints/$file.sh" ; then + hintfile="$file" + else + hintfile='' + fi +fi +cd UU +?X: From here on, we must use $rsrc instead of $src + +@end +: Process their -A options +. ./posthint.sh + +@if osname || osvers +: Ask them to confirm the OS name +cat << EOM + +Configure uses the operating system name and version to set some defaults. +The default value is probably right if the name rings a bell. Otherwise, +since spelling matters for me, either accept the default or answer "none" +to leave it blank. + +EOM +@end +@if osname +case "$osname" in + ''|' ') + case "$hintfile" in + ''|' '|none) dflt=none ;; + *) dflt=`echo $hintfile | $sed -e 's/\.sh$//' -e 's/_.*$//'` ;; + esac + ;; + *) dflt="$osname" ;; +esac +rp="Operating system name?" +. ./myread +case "$ans" in +none) osname='' ;; +*) osname=`echo "$ans" | $sed -e 's/[ ][ ]*/_/g' | ./tr '[A-Z]' '[a-z]'`;; +esac +@end +@if osvers +@if osname +echo " " +@end +case "$osvers" in + ''|' ') + case "$hintfile" in + ''|' '|none) dflt=none ;; + *) dflt=`echo $hintfile | $sed -e 's/\.sh$//' -e 's/^[^_]*//'` + dflt=`echo $dflt | $sed -e 's/^_//' -e 's/_/./g'` + case "$dflt" in + ''|' ') dflt=none ;; + esac + ;; + esac + ;; + *) dflt="$osvers" ;; +esac +rp="Operating system version?" +. ./myread +case "$ans" in +none) osvers='' ;; +*) osvers="$ans" ;; +esac + +@end diff --git a/mcon/U/Oldsym.U b/mcon/U/Oldsym.U new file mode 100644 index 0000000..8b11133 --- /dev/null +++ b/mcon/U/Oldsym.U @@ -0,0 +1,66 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Oldsym.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 15:06:58 ram +?RCS: patch61: added support for src.U +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:13 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit follows the creation of the config.sh file. It adds some +?X: special symbols: defines from patchlevel.h file if any and CONFIG, +?X: which is set to true. Then, we try to keep all the new symbols that +?X: may come from a hint file or a previous config.sh file. +?X: +?MAKE:Oldsym: Config_sh Options test hint src sed sort uniq +?MAKE: -pick add $@ %< +?T:CONFIG sym tmp +?F:!UU +: add special variables +$test -f $src/patchlevel.h && \ +awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh +echo "CONFIG=true" >>config.sh + +: propagate old symbols +if $test -f UU/config.sh; then +?X: Make sure each symbol is unique in oldconfig.sh + UU/oldconfig.sh +?X: +?X: All the symbols that appear twice come only from config.sh (hence the +?X: two config.sh in the command line). These symbols will be removed by +?X: the uniq -u command. The oldsyms file thus contains all the symbols +?X: that did not appear in the produced config.sh (Larry Wall). +?X: +?X: Do not touch the -u flag of uniq. This means you too, Jarkko. +?X: + $sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' \ + config.sh config.sh UU/oldconfig.sh |\ + $sort | $uniq -u >UU/oldsyms + set X `cat UU/oldsyms` + shift + case $# in + 0) ;; + *) + cat <>config.sh + for sym in `cat UU/oldsyms`; do + echo " Propagating $hint variable "'$'"$sym..." + eval 'tmp="$'"${sym}"'"' + echo "$tmp" | \ + sed -e "s/'/'\"'\"'/g" -e "s/^/$sym='/" -e "s/$/'/" >>config.sh + done + ;; + esac +fi + diff --git a/mcon/U/Options.U b/mcon/U/Options.U new file mode 100644 index 0000000..a38f565 --- /dev/null +++ b/mcon/U/Options.U @@ -0,0 +1,363 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Options.U,v $ +?RCS: Revision 3.0.1.7 1997/02/28 15:08:15 ram +?RCS: patch61: optdef.sh now starts with a "startsh" +?RCS: patch61: moved some code from Head.U +?RCS: +?RCS: Revision 3.0.1.6 1995/09/25 09:14:46 ram +?RCS: patch59: protected option parsing code against 'echo -*' option failure +?RCS: +?RCS: Revision 3.0.1.5 1995/05/12 12:04:52 ram +?RCS: patch54: added -K option for experts +?RCS: +?RCS: Revision 3.0.1.4 1995/01/30 14:27:52 ram +?RCS: patch49: this unit now exports file optdef.sh, not a variable +?RCS: +?RCS: Revision 3.0.1.3 1995/01/11 15:19:00 ram +?RCS: patch45: new -O option allowing -D and -U to override config.sh setttings +?RCS: patch45: file optdef.sh is no longer removed after sourcing +?RCS: +?RCS: Revision 3.0.1.2 1994/10/29 15:58:06 ram +?RCS: patch36: ensure option definition file is removed before appending +?RCS: patch36: protect variable definitions with spaces in them +?RCS: +?RCS: Revision 3.0.1.1 1994/06/20 06:55:44 ram +?RCS: patch30: now uses new me symbol to tag error messages +?RCS: patch30: new -D and -U options to define/undef symbols (JHI) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:14 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: Command line parsing. It is really important that the variables used here +?X: be not listed in the MAKE line, or they will be saved in config.sh and +?X: loading this file to fetch default answers would clobber the values set +?X: herein. +?X: +?MAKE:Options: startsh +?MAKE: -pick wipe $@ %< +?V:reuseval alldone error realsilent silent extractsh fastread \ + override knowitall: config_sh +?T:arg argn symbol config_arg0 config_args config_argc xxx yyy zzz uuu +?T:args_exp args_sep arg_exp +?F:!Configure +?F:./optdef.sh ./cmdline.opt ./posthint.sh ./cmdl.opt +: Save command line options in file UU/cmdline.opt for later use in +: generating config.sh. +?X: This temporary file will be read by Oldsym.U. I used a temporary +?X: file to preserve all sorts of potential command line quotes and +?X: also because we don't know in advance how many variables we'll +?X: need, so I can't actually declare them on the MAKE line. +?X: The config_args variable won't be quite correct if Configure is +?X: fed something like ./Configure -Dcc="gcc -B/usr/ccs/bin/" +?X: since the quotes are gone by the time we see them. You'd have to +?X: reconstruct the command line from the config_arg? lines, but since +?X: I don't imagine anyone actually having to do that, I'm not going +?X: to worry too much. +cat > cmdline.opt <>cmdline.opt < cmdl.opt +$arg +EOC + arg_exp=`cat cmdl.opt` + args_exp="$args_exp$args_sep'$arg_exp'" + argn=`expr $argn + 1` + args_sep=' ' +done +?X: args_exp is good for restarting self: eval "set X $args_exp"; shift; $0 "$@" +?X: used by hints/os2.sh in Perl, for instance +rm -f cmdl.opt + +: produce awk script to parse command line options +cat >options.awk <<'EOF' +BEGIN { + optstr = "A:dD:eEf:hKOrsSU:V"; # getopt-style specification + + len = length(optstr); + for (i = 1; i <= len; i++) { + c = substr(optstr, i, 1); +?X: some older awk's do not have the C ?: construct + if (i < len) a = substr(optstr, i + 1, 1); else a = ""; + if (a == ":") { + arg[c] = 1; + i++; + } + opt[c] = 1; + } +} +{ + expect = 0; + str = $0; + if (substr(str, 1, 1) != "-") { + printf("'%s'\n", str); + next; + } + len = length($0); + for (i = 2; i <= len; i++) { + c = substr(str, i, 1); + if (!opt[c]) { + printf("-%s\n", substr(str, i)); + next; + } + printf("-%s\n", c); + if (arg[c]) { + if (i < len) + printf("'%s'\n", substr(str, i + 1)); + else + expect = 1; + next; + } + } +} +END { + if (expect) + print "?"; +} +EOF + +: process the command line options +?X: Use "$@" to keep arguments with spaces in them from being split apart. +?X: For the same reason, awk will output quoted arguments and the final eval +?X: removes them and sets a proper $* array. An 'X' is prependend to each +?X: argument before being fed to echo to guard against 'echo -x', where -x +?X: would be understood as an echo option! It is removed before feeding awk. +set X `for arg in "$@"; do echo "X$arg"; done | + sed -e s/X// | awk -f options.awk` +eval "set $*" +shift +rm -f options.awk + +: set up default values +fastread='' +reuseval=false +config_sh='' +alldone='' +error='' +silent='' +extractsh='' +override='' +knowitall='' +rm -f optdef.sh posthint.sh +cat >optdef.sh <&4 redirection based on the value of the +?X: realsilent variable... -- RAM, 18/93/96 +?X: + +: option parsing +while test $# -gt 0; do + case "$1" in + -d) shift; fastread=yes;; + -e) shift; alldone=cont;; + -f) + shift + cd .. + if test -r "$1"; then + config_sh="$1" + else + echo "$me: cannot read config file $1." >&2 + error=true + fi + cd UU + shift;; + -h) shift; error=true;; + -r) shift; reuseval=true;; + -s) shift; silent=true; realsilent=true;; + -E) shift; alldone=exit;; + -K) shift; knowitall=true;; + -O) shift; override=true;; + -S) shift; silent=true; extractsh=true;; + -D) + shift + case "$1" in + *=) + echo "$me: use '-U symbol=', not '-D symbol='." >&2 + echo "$me: ignoring -D $1" >&2 + ;; + *=*) echo "$1" | \ + sed -e "s/'/'\"'\"'/g" -e "s/=\(.*\)/='\1'/" >> optdef.sh;; + *) echo "$1='define'" >> optdef.sh;; + esac + shift + ;; + -U) + shift + case "$1" in + *=) echo "$1" >> optdef.sh;; + *=*) + echo "$me: use '-D symbol=val', not '-U symbol=val'." >&2 + echo "$me: ignoring -U $1" >&2 + ;; + *) echo "$1='undef'" >> optdef.sh;; + esac + shift + ;; + -A) + shift + xxx='' + yyy="$1" + zzz='' + uuu=undef + case "$yyy" in + *=*) zzz=`echo "$yyy"|sed 's!=.*!!'` + case "$zzz" in + *:*) zzz='' ;; + *) xxx=append + zzz=" "`echo "$yyy"|sed 's!^[^=]*=!!'` + yyy=`echo "$yyy"|sed 's!=.*!!'` ;; + esac + ;; + esac + case "$xxx" in + '') case "$yyy" in + *:*) xxx=`echo "$yyy"|sed 's!:.*!!'` + yyy=`echo "$yyy"|sed 's!^[^:]*:!!'` + zzz=`echo "$yyy"|sed 's!^[^=]*=!!'` + yyy=`echo "$yyy"|sed 's!=.*!!'` ;; + *) xxx=`echo "$yyy"|sed 's!:.*!!'` + yyy=`echo "$yyy"|sed 's!^[^:]*:!!'` ;; + esac + ;; + esac + case "$xxx" in + append) + echo "$yyy=\"\${$yyy}$zzz\"" >> posthint.sh ;; + clear) + echo "$yyy=''" >> posthint.sh ;; + define) + case "$zzz" in + '') zzz=define ;; + esac + echo "$yyy='$zzz'" >> posthint.sh ;; + eval) + echo "eval \"$yyy=$zzz\"" >> posthint.sh ;; + prepend) + echo "$yyy=\"$zzz\${$yyy}\"" >> posthint.sh ;; + undef) + case "$zzz" in + '') zzz="$uuu" ;; + esac + echo "$yyy=$zzz" >> posthint.sh ;; + *) echo "$me: unknown -A command '$xxx', ignoring -A $1" >&2 ;; + esac + shift + ;; + -V) echo "$me generated by metaconfig PL." >&2 + exit 0;; + --) break;; + -*) echo "$me: unknown option $1" >&2; shift; error=true;; + *) break;; + esac +done + +case "$error" in +true) + cat >&2 <&1 +case "$silent" in +true) exec 1>/dev/null;; +esac + +: run the defines and the undefines, if any, but leave the file out there... +touch optdef.sh +. ./optdef.sh +: create the posthint manipulation script and leave the file out there... +?X: this file will be perused by Oldconfig.U +touch posthint.sh + diff --git a/mcon/U/Prefixit.U b/mcon/U/Prefixit.U new file mode 100644 index 0000000..dae8dba --- /dev/null +++ b/mcon/U/Prefixit.U @@ -0,0 +1,68 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Prefixit.U,v $ +?RCS: Revision 3.0.1.1 1995/01/30 14:29:22 ram +?RCS: patch49: created +?RCS: +?X: +?X: Used as: "set dflt var dir; eval $prefixit" to set $dflt to be +?X: $prefix/dir by default, or the previous $var depending on certain +?X: conditions: +?X: - If the $oldprefix variable is empty, then $prefix holds the same +?X: value as on previous runs. Therefore, reuse $var if set, otherwise +?X: set $dflt to $prefix/dir. +?X: - If $oldprefix is not empty, then set $dflt to $prefix/dir if $var +?X: is empty (first run). Otherwise, if $var is $oldprefix/dir, then +?X: change it to $prefix/dir. If none of the above, reuse the old $var. +?X: +?X: When dir is omitted, the dflt variable is set to $var if prefix did not +?X: change, to an empty value otherwise. If dir=none, then a single space +?X: in var is kept as-is, even if the prefix changes. +?X: +?MAKE:Prefixit: prefix oldprefix +?MAKE: -pick add $@ %< +?LINT:define prefixit +?S:prefixit: +?S: This shell variable is used internally by Configure to reset +?S: the leading installation prefix correctly when it is changed. +?S: set dflt var [dir] +?S: eval $prefixit +?S: That will set $dflt to $var or $prefix/dir depending on the +?S: value of $var and $oldprefix. +?S:. +?V:prefixit +?T:tp +: set the prefixit variable, to compute a suitable default value +prefixit='case "$3" in +""|none) + case "$oldprefix" in + "") eval "$1=\"\$$2\"";; + *) + case "$3" in + "") eval "$1=";; + none) + eval "tp=\"\$$2\""; + case "$tp" in + ""|" ") eval "$1=\"\$$2\"";; + *) eval "$1=";; + esac;; + esac;; + esac;; +*) + eval "tp=\"$oldprefix-\$$2-\""; eval "tp=\"$tp\""; + case "$tp" in + --|/*--|\~*--) eval "$1=\"$prefix/$3\"";; + /*-$oldprefix/*|\~*-$oldprefix/*) + eval "$1=\`echo \$$2 | sed \"s,^$oldprefix,$prefix,\"\`";; + *) eval "$1=\"\$$2\"";; + esac;; +esac' + diff --git a/mcon/U/Prefixup.U b/mcon/U/Prefixup.U new file mode 100644 index 0000000..46b0b15 --- /dev/null +++ b/mcon/U/Prefixup.U @@ -0,0 +1,38 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Prefixup.U,v $ +?RCS: Revision 3.0.1.1 1995/01/30 14:30:40 ram +?RCS: patch49: created +?RCS: +?X: +?X: Used as: "set dflt; eval $prefixup" to set $dflt to be $prefix/dir +?X: instead of $prefixexp/dir, in case portability was involved somehow +?X: and $prefix uses ~name expansion. +?X: +?MAKE:Prefixup: prefix prefixexp +?MAKE: -pick add $@ %< +?LINT:define prefixup +?S:prefixup: +?S: This shell variable is used internally by Configure to reset +?S: the leading installation prefix correctly when $prefix uses +?S: ~name expansion. +?S: set dflt +?S: eval $prefixup +?S: That will set $dflt to $prefix/dir if it was $prefixexp/dir and +?S: $prefix differs from $prefixexp. +?S:. +?V:prefixup +: set the prefixup variable, to restore leading tilda escape +prefixup='case "$prefixexp" in +"$prefix") ;; +*) eval "$1=\`echo \$$1 | sed \"s,^$prefixexp,$prefix,\"\`";; +esac' + diff --git a/mcon/U/Rcs.U b/mcon/U/Rcs.U new file mode 100644 index 0000000..255fcb6 --- /dev/null +++ b/mcon/U/Rcs.U @@ -0,0 +1,34 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Rcs.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:15 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This is a unit that helps people who write SH scripts and keep them under +?X: RCS, but don't think to protect the $Log and other $Id keywords from +?X: variable substitution (or people like me who do not like to). +?X: +?MAKE:Author Date Header Id Locker Log RCSfile Revision Source State: Oldconfig +?MAKE: -pick weed $@ %< +?LINT:describe Author Date Header Id Locker Log RCSfile Revision Source State +: preserve RCS keywords in files with variable substitution, grrr +?Author:Author='$Author' +?Date:Date='$Date' +?Header:Header='$Header' +?Id:Id='$Id' +?$Locker' +?Log:Log='$Log' +?RCSfile:RCSfile='$RCSfile' +?Revision:Revision='$Revision' +?Source:Source='$Source' +?State:State='$State' + diff --git a/mcon/U/Setvar.U b/mcon/U/Setvar.U new file mode 100644 index 0000000..75b640c --- /dev/null +++ b/mcon/U/Setvar.U @@ -0,0 +1,50 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Setvar.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 15:58:28 ram +?RCS: patch36: call ./whoa explicitely instead of relying on PATH +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:16 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit produces a variable that is intended to be eval'ed in +?X: order to define/undefine a symbol. A consistency check is made +?X: regarding any previous value and a warning is issued if there +?X: is any discrepancy. +?X: +?X: To use it, say: +?X: val= +?X: set d_variable +?X: eval $setvar +?X: +?MAKE:Setvar: Whoa +?MAKE: -pick add $@ %< +?LINT:define setvar +?S:setvar: +?S: This shell variable is used internally by Configure to set a value +?S: to a given symbol that is defined or not. A typical use is: +?S: val= +?S: set d_variable +?S: eval $setvar +?S: That will print a message in case the $val value is not the same +?S: as the previous value of $d_variable. +?S:. +?V:setvar:val +?T:var was td tu +: function used to set '$1' to '$val' +setvar='var=$1; eval "was=\$$1"; td=$define; tu=$undef; +case "$val$was" in +$define$undef) . ./whoa; eval "$var=\$td";; +$undef$define) . ./whoa; eval "$var=\$tu";; +*) eval "$var=$val";; +esac' + diff --git a/mcon/U/Signal.U b/mcon/U/Signal.U new file mode 100644 index 0000000..6ac5eb8 --- /dev/null +++ b/mcon/U/Signal.U @@ -0,0 +1,271 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Signal.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 15:20:01 ram +?RCS: patch61: created +?RCS: +?X: +?X: This unit produces three files: +?X: +?X: 1- A signal.c file, which, when compiled and run, produces an output like: +?X: +?X: HUP 1 +?X: INT 2 +?X: QUIT 3 +?X: etc... +?X: +?X: 2- A signal.awk script to parse the output of signal.c, fill +?X: in gaps (up to NSIG) and move duplicates to the end. +?X: +?X: 3- A signal_cmd script to compile signal.c and run it +?X: through sort -n -k 2 | uniq | awk -f signal.awk. +?X: (we try also sort -n +1 since some old hosts don't grok sort -k) +?X: (This is called signal_cmd to avoid OS/2 confusion with +?X: signal.cmd vs. signal. +?X: The signal_cmd script also falls back on checking signals one at a +?X: time in case the signal.c program fails. On at least one version of +?X: Linux 2.1.x, the header file #define'd SIGRTMAX to a symbol that +?X: is not defined by the compiler/linker. :-(. Further, on that same +?X: version of Linux, the user had a defective C-shell that gave an +?X: incorrect list for kill -l, so the fall-back didn't work. +?X: +?X: This unit is then used by sig_name.U. +?X: +?MAKE:Signal: test tr rm awk cat grep startsh eunicefix sed sort uniq \ + Findhdr cppstdin +cppflags cppminus Compile trnl run +?MAKE: -pick add $@ %< +?X:all files declared as "public" since they're used from other units +?F:signal.c signal_cmd signal.lst signal signal.awk +?T: xx xxx xxxfiles +?LINT:use rm run +: Trace out the files included by signal.h, then look for SIGxxx names. +?X: Remove SIGARRAYSIZE used by HPUX. +?X: Remove SIGSTKSIZE used by Linux. +?X: Remove SIGSTKSZ used by Posix. +?X: Remove SIGTYP void lines used by OS2. +?X: Some cpps, like os390, dont give the file name anywhere +if [ "X$fieldn" = X ]; then + : Just make some guesses. We check them later. + xxx='/usr/include/signal.h /usr/include/sys/signal.h' +else + xxx=`echo '#include ' | + $cppstdin $cppminus $cppflags 2>/dev/null | + $grep '^[ ]*#.*include' | + $awk "{print \\$$fieldn}" | $sed 's!"!!g' | \ + $sed 's!\\\\\\\\!/!g' | $sort | $uniq` +fi +?X: Check this list of files to be sure we have parsed the cpp output ok. +?X: This will also avoid potentially non-existent files, such +?X: as ../foo/bar.h +xxxfiles='' +?X: Add /dev/null in case the $xxx list is empty. +for xx in $xxx /dev/null ; do + $test -f "$xx" && xxxfiles="$xxxfiles $xx" +done +?X: If we have found no files, at least try signal.h +case "$xxxfiles" in +'') xxxfiles=`./findhdr signal.h` ;; +esac +xxx=`awk ' +$1 ~ /^#define$/ && $2 ~ /^SIG[A-Z0-9]*$/ && $2 !~ /SIGARRAYSIZE/ && $2 !~ /SIGSTKSIZE/ && $2 !~ /SIGSTKSZ/ && $3 !~ /void/ { + print substr($2, 4, 20) +} +$1 == "#" && $2 ~ /^define$/ && $3 ~ /^SIG[A-Z0-9]*$/ && $3 !~ /SIGARRAYSIZE/ && $4 !~ /void/ { + print substr($3, 4, 20) +}' $xxxfiles` +: Append some common names just in case the awk scan failed. +xxx="$xxx ABRT ALRM BUS CANCEL CHLD CLD CONT DIL EMT FPE" +xxx="$xxx FREEZE HUP ILL INT IO IOT KILL LOST LWP PHONE" +xxx="$xxx PIPE POLL PROF PWR QUIT RTMAX RTMIN SEGV STKFLT STOP" +xxx="$xxx SYS TERM THAW TRAP TSTP TTIN TTOU URG USR1 USR2" +xxx="$xxx USR3 USR4 VTALRM WAITING WINCH WIND WINDOW XCPU XFSZ" + +: generate a few handy files for later +$cat > signal.c <<'EOCP' +#include +#include +#include +int main() { + +/* Strange style to avoid deeply-nested #if/#else/#endif */ +#ifndef NSIG +# ifdef _NSIG +# define NSIG (_NSIG) +# endif +#endif + +#ifndef NSIG +# ifdef SIGMAX +# define NSIG (SIGMAX+1) +# endif +#endif + +#ifndef NSIG +# ifdef SIG_MAX +# define NSIG (SIG_MAX+1) +# endif +#endif + +#ifndef NSIG +# ifdef MAXSIG +# define NSIG (MAXSIG+1) +# endif +#endif + +#ifndef NSIG +# ifdef MAX_SIG +# define NSIG (MAX_SIG+1) +# endif +#endif + +#ifndef NSIG +# ifdef SIGARRAYSIZE +# define NSIG (SIGARRAYSIZE+1) /* Not sure of the +1 */ +# endif +#endif + +#ifndef NSIG +# ifdef _sys_nsig +# define NSIG (_sys_nsig) /* Solaris 2.5 */ +# endif +#endif + +/* Default to some arbitrary number that's big enough to get most + of the common signals. +*/ +#ifndef NSIG +# define NSIG 50 +#endif + +printf("NSIG %d\n", NSIG); + +#ifndef JUST_NSIG + +EOCP + +echo $xxx | $tr ' ' $trnl | $sort | $uniq | $awk ' +{ + printf "#ifdef SIG"; printf $1; printf "\n" + printf "printf(\""; printf $1; printf " %%d\\n\",SIG"; + printf $1; printf ");\n" + printf "#endif\n" +} +END { + printf "#endif /* JUST_NSIG */\n"; + printf "exit(0);\n}\n"; +} +' >>signal.c +$cat >signal.awk <<'EOP' +BEGIN { ndups = 0 } +$1 ~ /^NSIG$/ { nsig = $2 } +($1 !~ /^NSIG$/) && (NF == 2) { + if ($2 > maxsig) { maxsig = $2 } + if (sig_name[$2]) { + dup_name[ndups] = $1 + dup_num[ndups] = $2 + ndups++ + } + else { + sig_name[$2] = $1 + sig_num[$2] = $2 + } +} +END { + if (nsig == 0) { + nsig = maxsig + 1 + } + printf("NSIG %d\n", nsig); + for (n = 1; n < nsig; n++) { + if (sig_name[n]) { + printf("%s %d\n", sig_name[n], sig_num[n]) + } + else { + printf("NUM%d %d\n", n, n) + } + } + for (n = 0; n < ndups; n++) { + printf("%s %d\n", dup_name[n], dup_num[n]) + } +} +EOP +$cat >signal_cmd <>signal_cmd <<'EOS' + +set signal +if eval $compile_ok; then + $run ./signal$_exe | ($sort -n -k 2 2>/dev/null || $sort -n +1) | \ + $uniq | $awk -f signal.awk >signal.lst +else + echo "(I can't seem be able to compile the whole test program)" >&4 + echo "(I'll try it in little pieces.)" >&4 + set signal -DJUST_NSIG + if eval $compile_ok; then + $run ./signal$_exe > signal.nsg + $cat signal.nsg + else + echo "I can't seem to figure out how many signals you have." >&4 + echo "Guessing 50." >&4 + echo 'NSIG 50' > signal.nsg + fi + : Now look at all the signal names, one at a time. + for xx in `echo $xxx | $tr ' ' $trnl | $sort | $uniq`; do + $cat > signal.c < +#include +#include +int main() { +printf("$xx %d\n", SIG${xx}); +return 0; +} +EOCP + set signal + if eval $compile; then + echo "SIG${xx} found." + $run ./signal$_exe >> signal.ls1 + else + echo "SIG${xx} NOT found." + fi + done + if $test -s signal.ls1; then + $cat signal.nsg signal.ls1 | + $sort -n | $uniq | $awk -f signal.awk >signal.lst + fi + +fi +if $test -s signal.lst; then + : +else + echo "(AAK! I can't compile the test programs -- Guessing)" >&4 + echo 'kill -l' >signal + set X `csh -f signal.lst +fi +$rm -f signal.c signal$_exe signal$_o signal.nsg signal.ls1 +EOS +chmod a+x signal_cmd +$eunicefix signal_cmd + diff --git a/mcon/U/Tr.U b/mcon/U/Tr.U new file mode 100644 index 0000000..a7320fe --- /dev/null +++ b/mcon/U/Tr.U @@ -0,0 +1,103 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Tr.U,v $ +?RCS: Revision 3.0.1.2 1994/10/29 18:00:54 ram +?RCS: patch43: forgot to quote $@ to protect against "evil" characters +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 15:58:35 ram +?RCS: patch36: created +?RCS: +?X: +?X: This unit produces a bit of shell code that must be dotted in in order +?X: to do a character translation. It catches translations to uppercase or +?X: to lowercase, and then invokes the real tr to perform the job. +?X: +?X: This unit is necessary on HP machines (HP strikes again!) with non-ascii +?X: ROMAN8-charset, where normal letters are not arranged in a row, so a-z +?X: covers not the whole alphabet but lots of special chars. This was reported +?X: by Andreas Sahlbach . +?X: +?X: Units performing a tr '[A-Z]' '[a-z]' or the other way round should include +?X: us in their dependency and use ./tr instead. +?X: +?MAKE:Tr: startsh tr eunicefix +?MAKE: -pick add $@ %< +?F:./tr +?T:up low LC_ALL +: see whether [:lower:] and [:upper:] are supported character classes +echo " " +case "`echo AbyZ | LC_ALL=C $tr '[:lower:]' '[:upper:]' 2>/dev/null`" in +ABYZ) + echo "Good, your tr supports [:lower:] and [:upper:] to convert case." >&4 + up='[:upper:]' + low='[:lower:]' + ;; +*) # There is a discontinuity in EBCDIC between 'I' and 'J' + # (0xc9 and 0xd1), therefore that is a nice testing point. + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | LC_ALL=C $tr '[I-J]' '[i-j]' 2>/dev/null`" in + ij) up='[A-Z]' + low='[a-z]' + ;; + esac + fi + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | LC_ALL=C $tr I-J i-j 2>/dev/null`" in + ij) up='A-Z' + low='a-z' + ;; + esac + fi + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | od -x 2>/dev/null`" in + *C9D1*|*c9d1*) + echo "Hey, this might be EBCDIC." >&4 + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | \ + LC_ALL=C $tr '[A-IJ-RS-Z]' '[a-ij-rs-z]' 2>/dev/null`" in + ij) up='[A-IJ-RS-Z]' + low='[a-ij-rs-z]' + ;; + esac + fi + if test "X$up" = X -o "X$low" = X; then + case "`echo IJ | LC_ALL=C $tr A-IJ-RS-Z a-ij-rs-z 2>/dev/null`" in + ij) up='A-IJ-RS-Z' + low='a-ij-rs-z' + ;; + esac + fi + ;; + esac + fi +esac +case "`echo IJ | LC_ALL=C $tr \"$up\" \"$low\" 2>/dev/null`" in +ij) + echo "Using $up and $low to convert case." >&4 + ;; +*) + echo "I don't know how to translate letters from upper to lower case." >&4 + echo "Your tr is not acting any way I know of." >&4 + exit 1 + ;; +esac +: set up the translation script tr, must be called with ./tr of course +cat >tr <warn <msg +else + cat >msg +fi +?X: Emit the warning, prefixing all lines with '*** ' +echo "*** WARNING:" >&4 +sed -e 's/^/*** /' &4 +echo "*** " >&4 +?X: Save the warning in the logs, which will be shown again at the end +cat msg >>config.msg +echo " " >>config.msg +rm -f msg +EOS +chmod +x warn +$eunicefix warn + diff --git a/mcon/U/Warn_v7EXT.U b/mcon/U/Warn_v7EXT.U new file mode 100644 index 0000000..d015400 --- /dev/null +++ b/mcon/U/Warn_v7EXT.U @@ -0,0 +1,34 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Warn_v7EXT.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:01:42 ram +?RCS: patch36: call ./v7 explicitely instead of relying on PATH +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:17 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: This unit issues warnings to V7 sites that they are living dangerously. +?X: This unit needs to get mentioned in End.U to get included. +?X: +?MAKE:Warn_v7EXT: package Guess +?MAKE: -pick add $@ %< +: Warnings +if ./v7; then + cat <whoa +$startsh +EOS +cat <<'EOSC' >>whoa +dflt=y +echo " " +echo "*** WHOA THERE!!! ***" >&4 +echo " The $hint value for \$$var on this machine was \"$was\"!" >&4 +rp=" Keep the $hint value?" +. ./myread +case "$ans" in +y) td=$was; tu=$was;; +esac +EOSC + diff --git a/mcon/U/abortsig.U b/mcon/U/abortsig.U new file mode 100644 index 0000000..a13f30f --- /dev/null +++ b/mcon/U/abortsig.U @@ -0,0 +1,79 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: abortsig.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:02:19 ram +?RCS: patch36: call ./usg explicitely instead of relying on PATH +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:20 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:abortsig: Myread Oldconfig Guess cat +cc ccflags rm +?MAKE: -pick add $@ %< +?S:abortsig: +?S: This variable holds the name of the signal used by the abort() call. +?S:. +?C:ABORTSIG: +?C: This symbol holds the signal number (symbol) used by the abort() call. To +?C: actually define the signal symbol, should be included. +?C:. +?H:#define ABORTSIG $abortsig /**/ +?H:. +?T:signal +: which signal is sent by abort ? +echo " " +case "$abortsig" in +'') + echo "Checking to see which signal is sent to the process by abort()..." >&4 + echo "abort" > abort.sh + chmod +x abort.sh +?X: SIGABRT should replace SIGIOT on USG machines in a near future (1991). + for signal in SIGIOT SIGILL SIGABRT; do + case "$abortsig" in + '') $cat >abort.c < +caught() { exit(0); } +int main() +{ +#ifdef $signal + signal($signal, caught); +#endif + if (-1 == abort()) + exit(1); + exit(1); +} +EOP +?X: We have to use the abort.sh script otherwise sh behaves strangely on AIX. + if $cc $ccflags -o abort abort.c >/dev/null 2>&1; then + (./abort.sh) >/dev/null 2>&1 + case $? in + 0) abortsig="$signal";; + esac + fi + ;; + esac + done + ;; +esac +case "$abortsig" in +'') echo "(I wasn't able to compute the signal name--guessing)" + if ./usg; then + dflt="SIGIOT" + else + dflt="SIGILL" + fi;; +*) dflt="$abortsig" + ;; +esac +rp="Which signal does abort() send to the process (signal name)?" +. ./myread +abortsig="$ans" +$rm -f core abort.sh abort abort.c + diff --git a/mcon/U/active.U b/mcon/U/active.U new file mode 100644 index 0000000..3a1a65c --- /dev/null +++ b/mcon/U/active.U @@ -0,0 +1,50 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: active.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:21 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:active activeexp: newslib Oldconfig Getfile +?MAKE: -pick add $@ %< +?S:active: +?S: The name of the active file for the news system. This file contains +?S: the list of active newsgroups. The name may have ~ on the front. +?S: The variable myactive is the expanded form. +?S:. +?S:activeexp (myactive): +?S: This is the same as the active variable, but is filename expanded +?S: so that later Configure units can look at the active file if desired. +?S:. +?C:ACTIVE: +?C: The name of the active file for the news system. This file contains +?C: the list of active newsgroups. The name may have ~ on the front. +?C:. +?C:ACTIVE_EXP: +?C: This is the same as ACTIVE, but is filename expanded at configuration +?C: time, for programs that do not want to deal with it themselves. +?C:. +?H:#define ACTIVE "$active" /**/ +?H:#define ACTIVE_EXP "$activeexp" /**/ +?H:. +: locate active file +echo " " +case "$active" in +'') + dflt=$newslib/active + ;; +*) dflt="$active";; +esac +fn=l~:active +rp='Where is the active file?' +. ./getfile +active="$ans" +activeexp="$ansexp" + diff --git a/mcon/U/afs.U b/mcon/U/afs.U new file mode 100644 index 0000000..4cf024b --- /dev/null +++ b/mcon/U/afs.U @@ -0,0 +1,55 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: afs.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 15:23:06 ram +?RCS: patch61: can now explicitely tell Configure whether AFS is running +?RCS: +?RCS: Revision 3.0.1.1 1993/08/24 12:24:43 ram +?RCS: patch3: created +?RCS: +?MAKE:afs afsroot: test +?MAKE: -pick add $@ %< +?S:afs: +?S: This variable is set to 'true' if AFS (Andrew File System) is used +?S: on the system, 'false' otherwise. It is possible to override this +?S: with a hint value or command line option, but you'd better know +?S: what you are doing. +?S:. +?S:afsroot: +?S: This variable is by default set to '/afs'. In the unlikely case +?S: this is not the correct root, it is possible to override this with +?S: a hint value or command line option. This will be used in subsequent +?S: tests for AFSness in the configure and test process. +?S:. +: allow them to override the AFS root +case "$afsroot" in +'') afsroot=/afs ;; +*) afsroot=$afsroot ;; +esac + +: is AFS running? +echo " " +case "$afs" in +$define|true) afs=true ;; +$undef|false) afs=false ;; +*) if $test -d $afsroot; then + afs=true + else + afs=false + fi + ;; +esac +if $afs; then + echo "AFS may be running... I'll be extra cautious then..." >&4 +else + echo "AFS does not seem to be running..." >&4 +fi + diff --git a/mcon/U/alignbytes.U b/mcon/U/alignbytes.U new file mode 100644 index 0000000..f31ec80 --- /dev/null +++ b/mcon/U/alignbytes.U @@ -0,0 +1,64 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: alignbytes.U,v $ +?RCS: Revision 3.0.1.2 1994/10/29 16:02:28 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 14:25:20 ram +?RCS: patch23: avoid ALIGNBYTES, since it conflicts on NetBSD +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:23 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:alignbytes: Myread cat cc ccflags rm +?MAKE: -pick add $@ %< +?S:alignbytes: +?S: This variable holds the number of bytes required to align a +?S: double. Usual values are 2, 4 and 8. +?S:. +?X: This used to be called ALIGNBYTES, but that conflicts with +?X: in NetBSD. +?C:MEM_ALIGNBYTES (ALIGNBYTES): +?C: This symbol contains the number of bytes required to align a +?C: double. Usual values are 2, 4 and 8. +?C:. +?H:#define MEM_ALIGNBYTES $alignbytes /**/ +?H:. +?F:!try +: check for alignment requirements +echo " " +case "$alignbytes" in +'') echo "Checking alignment constraints..." >&4 + $cat >try.c <<'EOCP' +struct foobar { + char foo; + double bar; +} try; +int main() +{ + printf("%d\n", (char *)&try.bar - (char *)&try.foo); +} +EOCP + if $cc $ccflags try.c -o try >/dev/null 2>&1; then + dflt=`./try` + else + dflt='8' + echo "(I can't seem to compile the test program...)" + fi + ;; +*) dflt="$alignbytes" + ;; +esac +rp="Doubles must be aligned on a how-many-byte boundary?" +. ./myread +alignbytes="$ans" +$rm -f try.c try + diff --git a/mcon/U/archlib.U b/mcon/U/archlib.U new file mode 100644 index 0000000..d0c2b29 --- /dev/null +++ b/mcon/U/archlib.U @@ -0,0 +1,125 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: archlib.U,v $ +?RCS: Revision 3.0.1.5 1997/02/28 15:23:38 ram +?RCS: patch61: skip existence checks for archlib +?RCS: +?RCS: Revision 3.0.1.4 1995/09/25 09:15:18 ram +?RCS: patch59: unit is now forced to the top of Configure, if possible +?RCS: +?RCS: Revision 3.0.1.3 1995/02/15 14:14:14 ram +?RCS: patch51: architecture name is now computed by a separate unit +?RCS: +?RCS: Revision 3.0.1.2 1995/01/30 14:32:22 ram +?RCS: patch49: archname is now systematically recomputed +?RCS: patch49: can now handle installation prefix changes (from WED) +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:02:36 ram +?RCS: patch36: created by ADO +?RCS: +?MAKE:d_archlib archlib archlibexp installarchlib: archname afs spackage \ + cat Getfile Loc Oldconfig prefixexp privlib test Prefixit Prefixup +?MAKE: -pick add $@ %< +?Y:TOP +?S:d_archlib: +?S: This variable conditionally defines ARCHLIB to hold the pathname +?S: of architecture-dependent library files for $package. If +?S: $archlib is the same as $privlib, then this is set to undef. +?S:. +?S:archlib: +?S: This variable holds the name of the directory in which the user wants +?S: to put architecture-dependent public library files for $package. +?S: It is most often a local directory such as /usr/local/lib. +?S: Programs using this variable must be prepared to deal +?S: with filename expansion. +?S:. +?S:archlibexp: +?S: This variable is the same as the archlib variable, but is +?S: filename expanded at configuration time, for convenient use. +?S:. +?S:installarchlib: +?S: This variable is really the same as archlibexp but may differ on +?S: those systems using AFS. For extra portability, only this variable +?S: should be used in makefiles. +?S:. +?C:ARCHLIB: +?C: This variable, if defined, holds the name of the directory in +?C: which the user wants to put architecture-dependent public +?C: library files for $package. It is most often a local directory +?C: such as /usr/local/lib. Programs using this variable must be +?C: prepared to deal with filename expansion. If ARCHLIB is the +?C: same as PRIVLIB, it is not defined, since presumably the +?C: program already searches PRIVLIB. +?C:. +?C:ARCHLIB_EXP: +?C: This symbol contains the ~name expanded version of ARCHLIB, to be used +?C: in programs that are not prepared to deal with ~ expansion at run-time. +?C:. +?H:#$d_archlib ARCHLIB "$archlib" /**/ +?H:#$d_archlib ARCHLIB_EXP "$archlibexp" /**/ +?H:. +: determine where public architecture dependent libraries go +set archlib archlib +eval $prefixit +case "$archlib" in +'') + case "$privlib" in + '') + dflt=`./loc . "." $prefixexp/lib /usr/local/lib /usr/lib /lib` + set dflt + eval $prefixup + ;; + *) dflt="$privlib/$archname";; + esac + ;; +*) dflt="$archlib";; +esac +cat < tmparch 2>&1 ; then + tarch=`$sed -e 's/ *$//' -e 's/ /_/g' \ + -e 's/$/'"-$osname/" tmparch` + else + tarch="$osname" + fi + $rm -f tmparch +else + tarch="$osname" +fi +case "$myarchname" in +''|"$tarch") ;; +*) + echo "(Your architecture name used to be $myarchname.)" + archname='' + ;; +esac +case "$archname" in +'') dflt="$tarch";; +*) dflt="$archname";; +esac +rp='What is your architecture name' +. ./myread +archname="$ans" +myarchname="$tarch" + diff --git a/mcon/U/baserev.U b/mcon/U/baserev.U new file mode 100644 index 0000000..3fc675c --- /dev/null +++ b/mcon/U/baserev.U @@ -0,0 +1,22 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: baserev.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:24 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:baserev: Null +?MAKE: -pick wipe $@ %< +?S:baserev: +?S: The base revision level of this package, from the .package file. +?S:. +: set the base revision +baserev= + diff --git a/mcon/U/basicshell.U b/mcon/U/basicshell.U new file mode 100644 index 0000000..b5ccfbc --- /dev/null +++ b/mcon/U/basicshell.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: basicshell.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:25 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:basicshell: Getfile Oldconfig bash csh ksh sh +?MAKE: -pick add $@ %< +?S:basicshell: +?S: This variable contains the eventual value of the BASICSHELL symbol, +?S: which contains the full name of the basic script shell on this +?S: system. Usual values are /bin/sh, /bin/ksh, /bin/csh. +?S:. +?C:BASICSHELL: +?C: This symbol contains the full name of the basic script shell on this +?C: system. Usual values are /bin/sh, /bin/ksh, /bin/csh. +?C:. +?H:#define BASICSHELL "$basicshell" /**/ +?H:. +: find the most basic shell for scripts +echo " " +case "$basicshell" in +'') + case "$sh $bash $csh $ksh" in + */sh*) dflt="$sh" ;; + */ksh*) dflt="$ksh" ;; + */csh*) dflt="$csh" ;; + */bash*) dflt="$bash" ;; + *) dflt='/bin/sh' ;; + esac + ;; +*) + dflt="$basicshell";; +esac +fn=f +rp="Give the full path name of the most basic shell used on your system" +. ./getfile +basicshell=$ans + diff --git a/mcon/U/bin.U b/mcon/U/bin.U new file mode 100644 index 0000000..81c0a96 --- /dev/null +++ b/mcon/U/bin.U @@ -0,0 +1,88 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: bin.U,v $ +?RCS: Revision 3.0.1.4 1995/09/25 09:15:32 ram +?RCS: patch59: unit is now forced to the top of Configure, if possible +?RCS: +?RCS: Revision 3.0.1.3 1995/01/30 14:32:40 ram +?RCS: patch49: can now handle installation prefix changes (from WED) +?RCS: +?RCS: Revision 3.0.1.2 1994/08/29 16:05:28 ram +?RCS: patch32: now uses installation prefix +?RCS: +?RCS: Revision 3.0.1.1 1993/09/13 15:56:51 ram +?RCS: patch10: made prompting more explicit (WAD) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:26 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:bin binexp installbin: Prefixit Getfile Oldconfig afs cat test +?MAKE: -pick add $@ %< +?Y:TOP +?S:bin: +?S: This variable holds the name of the directory in which the user wants +?S: to put publicly executable images for the package in question. It +?S: is most often a local directory such as /usr/local/bin. Programs using +?S: this variable must be prepared to deal with ~name substitution. +?S:. +?S:binexp: +?S: This is the same as the bin variable, but is filename expanded at +?S: configuration time, for use in your makefiles. +?S:. +?S:installbin: +?S: This variable is the same as binexp unless AFS is running in which case +?S: the user is explicitely prompted for it. This variable should always +?S: be used in your makefiles for maximum portability. +?S:. +?C:BIN: +?C: This symbol holds the path of the bin directory where the package will +?C: be installed. Program must be prepared to deal with ~name substitution. +?C:. +?C:BIN_EXP: +?C: This symbol is the filename expanded version of the BIN symbol, for +?C: programs that do not want to deal with that at run-time. +?C:. +?H:#define BIN "$bin" /**/ +?H:#define BIN_EXP "$binexp" /**/ +?H:. +?D:bin='/usr/local/bin' +: determine where public executables go +echo " " +set dflt bin bin +eval $prefixit +fn=d~ +rp='Pathname where the public executables will reside?' +. ./getfile +if $test "X$ansexp" != "X$binexp"; then + installbin='' +fi +bin="$ans" +binexp="$ansexp" +if $afs; then + $cat <&4 + $cat >try.c <<'EOCP' +#include +?X: Standard C requires a macro CHAR_BIT in +#ifdef __STDC__ +#include +#ifndef CHAR_BIT +#define CHAR_BIT 8 +#endif +#ifndef BITSPERBYTE +#define BITSPERBYTE CHAR_BIT +#endif +#else +?X: On non standard C, try with +#include +#ifndef BITSPERBYTE +#define BITSPERBYTE 8 +#endif +#endif +int main() +{ + printf("%d\n", BITSPERBYTE); +} +EOCP + if $cc $ccflags -o try try.c >/dev/null 2>&1 ; then + dflt=`./try` + else + dflt='8' + echo "(I can't seem to compile the test program. Guessing...)" + fi + ;; +*) + dflt="$bitpbyte" + ;; +esac +rp="What is the length of a byte (in bits)?" +. ./myread +bitpbyte="$ans" +$rm -f try.c try + diff --git a/mcon/U/byteorder.U b/mcon/U/byteorder.U new file mode 100644 index 0000000..a337080 --- /dev/null +++ b/mcon/U/byteorder.U @@ -0,0 +1,99 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: byteorder.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 15:24:55 ram +?RCS: patch61: no longer ask the user if the test runs ok +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:02:58 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:28 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:byteorder: cat Myread Oldconfig Loc +cc +ccflags rm +?MAKE: -pick add $@ %< +?S:byteorder: +?S: This variable holds the byte order. In the following, larger digits +?S: indicate more significance. The variable byteorder is either 4321 +?S: on a big-endian machine, or 1234 on a little-endian, or 87654321 +?S: on a Cray ... or 3412 with weird order ! +?S:. +?C:BYTEORDER: +?C: This symbol hold the hexadecimal constant defined in byteorder, +?C: i.e. 0x1234 or 0x4321, etc... +?C:. +?H:#define BYTEORDER 0x$byteorder /* large digits for MSB */ +?H:. +?T:xxx_prompt +?F:!try +: check for ordering of bytes in a long +case "$byteorder" in +'') + $cat <<'EOM' + +In the following, larger digits indicate more significance. A big-endian +machine like a Pyramid or a Motorola 680?0 chip will come out to 4321. A +little-endian machine like a Vax or an Intel 80?86 chip would be 1234. Other +machines may have weird orders like 3412. A Cray will report 87654321. If +the test program works the default is probably right. +I'm now running the test program... +EOM + $cat >try.c <<'EOCP' +#include +int main() +{ + int i; + union { + unsigned long l; + char c[sizeof(long)]; + } u; + + if (sizeof(long) > 4) + u.l = (0x08070605L << 32) | 0x04030201L; + else + u.l = 0x04030201L; + for (i = 0; i < sizeof(long); i++) + printf("%c", u.c[i]+'0'); + printf("\n"); + exit(0); +} +EOCP + xxx_prompt=y + if $cc $ccflags -o try try.c >/dev/null 2>&1 && ./try > /dev/null; then + dflt=`./try` + case "$dflt" in + [1-4][1-4][1-4][1-4]|12345678|87654321) + echo "(The test program ran ok.)" + echo "byteorder=$dflt" + xxx_prompt=n + ;; + ????|????????) echo "(The test program ran ok.)" ;; + *) echo "(The test program didn't run right for some reason.)" ;; + esac + else + dflt='4321' + cat <<'EOM' +(I can't seem to compile the test program. Guessing big-endian...) +EOM + fi + case "$xxx_prompt" in + y) + rp="What is the order of bytes in a long?" + . ./myread + byteorder="$ans" + ;; + *) byteorder=$dflt + ;; + esac + ;; +esac +$rm -f try.c try + diff --git a/mcon/U/cc.U b/mcon/U/cc.U new file mode 100644 index 0000000..15366ff --- /dev/null +++ b/mcon/U/cc.U @@ -0,0 +1,58 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: cc.U,v $ +?RCS: Revision 3.0.1.4 1995/05/12 12:06:47 ram +?RCS: patch54: may now abort Configure when cc does not work +?RCS: +?RCS: Revision 3.0.1.3 1995/01/11 15:20:11 ram +?RCS: patch45: changed gcc checking message to a more explicit one (WED) +?RCS: +?RCS: Revision 3.0.1.2 1994/10/29 16:04:29 ram +?RCS: patch36: detect gcc even when not called as 'gcc' (ADO) +?RCS: patch36: simplified gcc version checking (ADO) +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 14:26:06 ram +?RCS: patch23: added support for gcc version (ADO) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:30 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:cc: Myread Oldconfig Checkcc test +?MAKE: -pick add $@ %< +?S:cc: +?S: This variable holds the name of a command to execute a C compiler which +?S: can resolve multiple global references that happen to have the same +?S: name. Usual values are 'cc' and 'gcc'. +?S: Fervent ANSI compilers may be called 'c89'. AIX has xlc. +?S:. +?F:!cc.cbu +?D:cc='cc' +: Determine the C compiler to be used +echo " " +case "$cc" in +'') dflt=cc;; +*) dflt="$cc";; +esac +rp="Use which C compiler?" +. ./myread +cc="$ans" + +: See whether they have no cc but they do have gcc +. ./trygcc +?X: Look for a hint-file generated 'call-back-unit'. Now that the +?X: user has specified the compiler, we may need to set or change some +?X: other defaults. +if $test -f cc.cbu; then + . ./cc.cbu +fi +. ./checkcc + diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U new file mode 100644 index 0000000..8e61474 --- /dev/null +++ b/mcon/U/ccflags.U @@ -0,0 +1,403 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: ccflags.U,v $ +?RCS: Revision 3.0.1.9 1997/02/28 15:27:07 ram +?RCS: patch61: removed support for NO_PROTOTYPE detection on SCO +?RCS: patch61: new locincpth variable +?RCS: patch61: added info on the "additional ld flags" question +?RCS: +?RCS: Revision 3.0.1.8 1995/07/25 13:48:54 ram +?RCS: patch56: re-arranged compile line to include ldflags before objects +?RCS: +?RCS: Revision 3.0.1.7 1995/05/12 12:08:33 ram +?RCS: patch54: now checks for cc/ccflags/ldflags coherency +?RCS: +?RCS: Revision 3.0.1.6 1994/10/29 16:07:02 ram +?RCS: patch36: gcc versionning no longer relies on the C compiler's name +?RCS: patch36: simplified check for gcc version checking (ADO) +?RCS: +?RCS: Revision 3.0.1.5 1994/08/29 16:06:35 ram +?RCS: patch32: propagate -posix flag from ccflags to ldflags +?RCS: +?RCS: Revision 3.0.1.4 1994/05/06 14:28:45 ram +?RCS: patch23: -fpcc-struct-return only needed in gcc 1.x (ADO) +?RCS: patch23: cppflags now computed on an option-by-option basis +?RCS: patch23: magically added cc flags now only done the first time +?RCS: +?RCS: Revision 3.0.1.3 1993/09/13 15:58:29 ram +?RCS: patch10: explicitely mention -DDEBUG just in case they need it (WAD) +?RCS: patch10: removed all the "tans" variable usage (WAD) +?RCS: +?RCS: Revision 3.0.1.2 1993/08/27 14:39:38 ram +?RCS: patch7: added support for OSF/1 machines +?RCS: +?RCS: Revision 3.0.1.1 1993/08/25 14:00:24 ram +?RCS: patch6: added defaults for cppflags, ccflags and ldflags +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:31 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:ccflags ldflags lkflags cppflags optimize locincpth: test cat \ + Myread Guess Options Oldconfig gccversion mips_type +usrinc \ + package contains rm +cc cppstdin cppminus cpprun cpplast libpth \ + loclibpth hint +?MAKE: -pick add $@ %< +?S:ccflags: +?S: This variable contains any additional C compiler flags desired by +?S: the user. It is up to the Makefile to use this. +?S:. +?S:cppflags: +?S: This variable holds the flags that will be passed to the C pre- +?S: processor. It is up to the Makefile to use it. +?S:. +?S:optimize: +?S: This variable contains any optimizer/debugger flag that should be used. +?S: It is up to the Makefile to use it. +?S:. +?S:ldflags: +?S: This variable contains any additional C loader flags desired by +?S: the user. It is up to the Makefile to use this. +?S:. +?S:lkflags: +?S: This variable contains any additional C partial linker flags desired by +?S: the user. It is up to the Makefile to use this. +?S:. +?S:locincpth: +?S: This variable contains a list of additional directories to be +?S: searched by the compiler. The appropriate -I directives will +?S: be added to ccflags. This is intended to simplify setting +?S: local directories from the Configure command line. +?S: It's not much, but it parallels the loclibpth stuff in libpth.U. +?S:. +?T:inctest thisincl xxx flag inclwanted ftry previous thislibdir +?F:!cpp.c +?D:cppflags='' +?D:ccflags='' +?D:ldflags='' +?D:optimize='' +?INIT:: Possible local include directories to search. +?INIT:: Set locincpth to "" in a hint file to defeat local include searches. +?INIT:locincpth="/usr/local/include /opt/local/include /usr/gnu/include" +?INIT:locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include" +?INIT:: +?INIT:: no include file wanted by default +?INIT:inclwanted='' +?INIT: +: determine optimize, if desired, or use for debug flag also +case "$optimize" in +' '|$undef) dflt='none';; +'') dflt='-O';; +*) dflt="$optimize";; +esac +$cat </dev/null 2>&1 + then + dflt="$dflt -posix" + fi + ;; + esac +?X: turn warnings on if they're using gcc + case "$gccversion" in + 1*|2*) dflt="$dflt -Wall";; +?X: starting with version 3, add "-W -Wall -Wformat=2" by default + *) dflt="$dflt -W -Wall -Wformat=2";; + esac + ;; +esac + +?X: In USG mode, a MIPS system may need some BSD includes +case "$mips_type" in +*BSD*|'') inclwanted="$locincpth $usrinc";; +*) inclwanted="$locincpth $inclwanted $usrinc/bsd";; +esac +for thisincl in $inclwanted; do + if $test -d $thisincl; then + if $test x$thisincl != x$usrinc; then + case "$dflt" in + *$thisincl*);; + *) dflt="$dflt -I$thisincl";; + esac + fi + fi +done + +?X: Include test function (header, symbol) +inctest='if $contains $2 $usrinc/$1 >/dev/null 2>&1; then + xxx=true; +elif $contains $2 $usrinc/sys/$1 >/dev/null 2>&1; then + xxx=true; +else + xxx=false; +fi; +if $xxx; then + case "$dflt" in + *$2*);; + *) dflt="$dflt -D$2";; + esac; +fi' + +?X: +?X: OSF/1 uses __LANGUAGE_C__ instead of LANGUAGE_C +?X: +if ./osf1; then + set signal.h __LANGUAGE_C__; eval $inctest +else + set signal.h LANGUAGE_C; eval $inctest +fi + +case "$hint" in +default|recommended) dflt="$ccflags $dflt" ;; +*) dflt="$ccflags";; +esac + +case "$dflt" in +''|' ') dflt=none;; +esac +$cat <&4 + set X $cppflags + shift + cppflags='' + $cat >cpp.c <<'EOM' +#define BLURFL foo + +BLURFL xx LFRULB +EOM +?X: +?X: For each cc flag, try it out with both cppstdin and cpprun, since the +?X: first is almost surely a cc wrapper. We have to try both in case +?X: of cc flags like '-Olimit 2900' that are actually two words... +?X: + previous='' + for flag in $* + do + case "$flag" in + -*) ftry="$flag";; + *) ftry="$previous $flag";; + esac + if $cppstdin -DLFRULB=bar $ftry $cppminus cpp1.out 2>/dev/null && \ + $cpprun -DLFRULB=bar $ftry $cpplast cpp2.out 2>/dev/null && \ + $contains 'foo.*xx.*bar' cpp1.out >/dev/null 2>&1 && \ + $contains 'foo.*xx.*bar' cpp2.out >/dev/null 2>&1 + then + cppflags="$cppflags $ftry" + previous='' + else + previous="$flag" + fi + done + set X $cppflags + shift + cppflags=${1+"$@"} + case "$cppflags" in + *-*) echo "They appear to be: $cppflags";; + esac + $rm -f cpp.c cpp?.out + ;; +esac + +: flags used in final linking phase +case "$ldflags" in +'') if ./venix; then + dflt='-i -z' + else + dflt='' + fi + case "$ccflags" in + *-posix*) dflt="$dflt -posix" ;; + esac + ;; +*) dflt="$ldflags";; +esac + +: Try to guess additional flags to pick up local libraries. +for thislibdir in $libpth; do + case " $loclibpth " in + *" $thislibdir "*) + case "$dflt " in + *"-L$thislibdir "*) ;; + *) dflt="$dflt -L$thislibdir" ;; + esac + ;; + esac +done + +case "$dflt" in +'') dflt='none' ;; +*) set X $dflt; shift; dflt="$@";; +esac + +$cat <&4 +?X: Strip extra blanks in case some of the following variables are empty +set X $cc $optimize $ccflags $ldflags -o try try.c +shift +$cat >try.msg < try.c <<'EOF' +#include +int main() { exit(0); } +EOF +dflt=y +?X: Use "sh -c" to avoid error messages tagged with leading "Configure:". +?X: We need to try the resulting executable, because cc might yield a 0 status +?X: even when ld failed, in which case the executable will not run properly, +?X: if its x bit is set at all... +if sh -c "$cc $optimize $ccflags $ldflags -o try try.c" >>try.msg 2>&1; then + if sh -c './try' >>try.msg 2>&1; then + dflt=n + else + echo "The program compiled OK, but exited with status $?." >>try.msg + rp="You have a problem. Shall I abort Configure" + dflt=y + fi +else + echo "I can't compile the test program." >>try.msg + rp="You have a BIG problem. Shall I abort Configure" + dflt=y +fi +case "$dflt" in +y) + $cat try.msg >&4 +?X: using -K will prevent default aborting--maybe they're cross compiling? + case "$knowitall" in + '') + echo "(The supplied flags might be incorrect with this C compiler.)" + ;; + *) dflt=n;; + esac + echo " " + . ./myread + case "$ans" in + n*|N*) ;; + *) echo "Ok. Stopping Configure." >&4 + exit 1 + ;; + esac + ;; +n) echo "OK, that should do.";; +esac +$rm -f try try.* core + diff --git a/mcon/U/cf_email.U b/mcon/U/cf_email.U new file mode 100644 index 0000000..caad32e --- /dev/null +++ b/mcon/U/cf_email.U @@ -0,0 +1,58 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: cf_email.U,v $ +?RCS: Revision 3.0.1.1 1994/01/24 14:05:06 ram +?RCS: patch16: created +?RCS: +?RCS: +?MAKE:cf_email: cat cf_by myhostname mydomain Oldconfig Myread +?MAKE: -pick add $@ %< +?S:cf_email: +?S: Electronic mail address of the person who ran Configure. This can be +?S: used by units that require the user's e-mail, like MailList.U. +?S:. +?T:cont +: determine the e-mail address of the user who is running us +$cat < +?RCS: +?RCS: $Log: cf_name.U,v $ +?RCS: Revision 3.0.1.2 1994/05/06 14:29:36 ram +?RCS: patch23: fixed user name computation from /etc/passwd in bsd systems +?RCS: +?RCS: Revision 3.0.1.1 1994/01/24 14:05:11 ram +?RCS: patch16: created +?RCS: +?RCS: +?MAKE:+cf_name: cf_by passcat Filexp nametype cat test +?MAKE: -pick add $@ %< +?S:cf_name: +?S: Full name of the person who ran the Configure script and answered the +?S: questions. This can be used by units that require the user's full name. +?S: This variable is for internal use only. +?S:. +?T:xxx fn NAME +: figure out their full name +case "$NAME" in +'') case "$nametype" in + other) + fn=`./filexp ~/.fullname` + xxx=usg + $test -f $fn && xxx=other + ;; + *) + xxx="$nametype" + ;; + esac + + case "$xxx" in + bsd) + cf_name=`$passcat | grep "^$cf_by:" | \ + sed -e 's/^[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\):.*/\1/' \ + -e 's/,.*//'` + ;; + usg) + cf_name=`$passcat | grep "^$cf_by:" | \ + sed -e 's/^[^:]*:[^:]*:[^:]*:[^:]*:\([^:]*\):.*/\1/' \ + -e 's/[^-]*-\(.*\)(.*)/\1/'` + ;; + *) + cf_name=`$cat $fn` + ;; + esac + ;; +*) + cf_name="$NAME" + ;; +esac +?X: +?X: In the original unit, Graham asked for the user name, in case the above +?X: code was unable to figure it out correctly. Since now cf_name has been +?X: made an internal variable only (i.e. it is not saved in config.sh), letting +?X: the user override the computed default each time would be a pain. +?X: Therefore, I have decided to trust the above code to get it right, and for +?X: those rare cases where it will fail, too bad :-) --RAM. +?X: +echo " " +echo "Pleased to meet you, $cf_name." + diff --git a/mcon/U/cf_who.U b/mcon/U/cf_who.U new file mode 100644 index 0000000..2643d24 --- /dev/null +++ b/mcon/U/cf_who.U @@ -0,0 +1,62 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: cf_who.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 15:28:50 ram +?RCS: patch61: new computation method avoiding use of temporary file +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 14:42:34 ram +?RCS: patch23: login name now computed the hard way +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:32 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: Oldconfig dependency is there to ensure computation occurs after old values +?X: from config.sh have been loaded, so that we can supersede them. +?X: +?MAKE:cf_time cf_by: date Oldconfig +?MAKE: -pick add $@ %< +?S:cf_time: +?S: Holds the output of the "date" command when the configuration file was +?S: produced. This is used to tag both config.sh and config_h.SH. +?S:. +?S:cf_by: +?S: Login name of the person who ran the Configure script and answered the +?S: questions. This is used to tag both config.sh and config_h.SH. +?S:. +?LINT:change LC_ALL LANGUAGE +: who configured the system +?X: Ensure English date -- Jarkko Hietaniemi +cf_time=`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1` +?X: +?X: Leave a white space between first two '(' for ksh. The sub-shell is needed +?X: on some machines to avoid the error message when logname is not found; e.g. +?X: on SUN-OS 3.2, (logname || whoami) would not execute whoami if logname was +?X: not found. Sigh! +?X: +?X: Convex had a broken logname executable which returned a non-zero status, +?X: and that broke the previous: +?X: cf_by=`( (logname) 2>/dev/null || whoami) 2>&1` +?X: Switch to emergency mode... -- RAM, 19/04/94 +?X: +?X: Parens needed to avoid error message if the program does not exist. +?X: Uses case instead of $test so it can be put before $test is defined. +?X: Don't redirect to a file because on Ultrix (under script?) logname +?X: outputs a blank line first. This method will apparently work. +cf_by=`(logname) 2>/dev/null` +case "$cf_by" in +"") + cf_by=`(whoami) 2>/dev/null` + case "$cf_by" in + "") cf_by=unknown ;; + esac ;; +esac + diff --git a/mcon/U/charorder.U b/mcon/U/charorder.U new file mode 100644 index 0000000..8ed5428 --- /dev/null +++ b/mcon/U/charorder.U @@ -0,0 +1,143 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: charorder.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:07:08 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:33 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:chorder_int chorder_short chorder_long: Myread cat +cc +ccflags rm +?MAKE: -pick add $@ %< +?S:chorder_short (d_cos d_bos): +?S: Holds the value describing the byte ordering of characters in a short. +?S: On a Big-Endian machine, that would be "c0c1". +?S:. +?S:chorder_int (charoder): +?S: Holds the value describing the byte ordering of characters in an int. +?S: For instance, on a Big-Endian machine, this would be: "c0c1c2c3". +?S:. +?S:chorder_long (d_col d_bol): +?S: Holds the value describing the byte ordering of characters in a long. +?S: On a 64 bits Big-Endian machine, that would yield: "c0c1c2c3c4c5c6c7". +?S:. +?C:CHAR_ORDER_SHORT: +?C: Holds the byte ordering of characters in a short. It's a string +?C: value like "c0c1" on a Big-Endian machine. +?C:. +?C:CHAR_ORDER_INT: +?C: Holds the byte ordering of characters in an int. It's a string +?C: value like "c0c1c2c3" on a Big-Endian machine. +?C:. +?C:CHAR_ORDER_LONG: +?C: Holds the byte ordering of characters in a long. It's a string +?C: value like "c0c1c2c3c4c5c6c7" on a 64 bits Big-Endian machine. +?C:. +?H:#define CHAR_ORDER_SHORT "$chorder_short" /* byte order in a short */ +?H:#define CHAR_ORDER_INT "$chorder_int" /* byte order in an int */ +?H:#define CHAR_ORDER_LONG "$chorder_long" /* byte order in a long */ +?H:. +?F:!byteorder +: check for character ordering +echo " " +echo "Checking out byte order..." >&4 +$cat >byteorder.c <<'EOCP' +#include + +main(argc, argv) + int argc; + char *argv[]; { + int i; + int max; + union { + short u_s; + int u_i; + long u_l; + char u_c[sizeof(long)]; + } u; + switch (argv[1][0]) { + case 'l': + u.u_l = 0L; + /* HMS: ASSERT: sizeof(long) < 10. */ + for(i = 0; i < sizeof(long); ++i) { + u.u_l *= 0x100L; + u.u_l += (0xc0 + i); + } + max = sizeof(long); + break; + case 's': + u.u_s = 0; + /* HMS: ASSERT: sizeof(short) < 10. */ + for(i = 0; i < sizeof(short); ++i) { + u.u_s *= 0x100L; + u.u_s += (0xc0 + i); + } + max = sizeof(short); + break; + case 'i': + u.u_i = 0; + /* RAM: ASSERT: sizeof(int) < 10. */ + for(i = 0; i < sizeof(int); ++i) { + u.u_l *= 0x100L; + u.u_l += (0xc0 + i); + } + max = sizeof(int); + break; + default: + max = 0; + break; + } + for(i = 0; i < max; i++) { + printf("%x", u.u_c[i] & 0x00FF); + } + printf("\n"); + exit(0); +} +EOCP +if $cc $ccflags -o byteorder byteorder.c >/dev/null 2>&1 ; then + : null statement +@if chorder_short + chorder_short=`./byteorder s` +@end +@if chorder_int + chorder_int=`./byteorder i` +@end +@if chorder_long + chorder_long=`./byteorder l` +@end +else + $cat <&4 + $cat >try.c <<'EOCP' +#include +int main() +{ + printf("%d\n", sizeof(char)); +} +EOCP + if $cc $ccflags -o try try.c >/dev/null 2>&1 ; then + dflt=`./try` + else + dflt='1' + echo "(I can't seem to compile the test program. Guessing...)" + fi + ;; +*) + dflt="$charsize" + ;; +esac +rp="What is the size of a character (in bytes)?" +. ./myread +charsize="$ans" +$rm -f try.c try + diff --git a/mcon/U/contains.U b/mcon/U/contains.U new file mode 100644 index 0000000..fcfd216 --- /dev/null +++ b/mcon/U/contains.U @@ -0,0 +1,43 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: contains.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:35 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:contains: Nothing +?MAKE: -pick add $@ %< +?S:contains: +?S: This variable holds the command to do a grep with a proper return +?S: status. On most sane systems it is simply "grep". On insane systems +?S: it is a grep followed by a cat followed by a test. This variable +?S: is primarily for the use of other Configure units. +?S:. +: Some greps do not return status, grrr. +echo "grimblepritz" >grimble +if grep blurfldyick grimble >/dev/null 2>&1 ; then + contains=contains +elif grep grimblepritz grimble >/dev/null 2>&1 ; then + contains=grep +else + contains=contains +fi +rm -f grimble +: the following should work in any shell +case "$contains" in +contains*) + echo " " + echo "AGH! Grep doesn't return a status. Attempting remedial action." + cat >contains <<'EOSS' +grep "$1" "$2" >.greptmp && cat .greptmp && test -s .greptmp +EOSS +chmod +x contains +esac + diff --git a/mcon/U/cpp_stuff.U b/mcon/U/cpp_stuff.U new file mode 100644 index 0000000..2473ef2 --- /dev/null +++ b/mcon/U/cpp_stuff.U @@ -0,0 +1,157 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: cpp_stuff.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 15:30:48 ram +?RCS: patch61: added cute quoting trick for wild stringify support +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:08:24 ram +?RCS: patch36: now uses cppstdin instead of plain cpp for consistency (ADO) +?RCS: patch36: remove temporary files when done +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:36 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:cpp_stuff cpp_quote: cat contains cppstdin cppflags cppminus rm Warn \ + package +?MAKE: -pick add $@ %< +?S:cpp_stuff: +?S: This variable contains an identification of the catenation mechanism +?S: used by the C preprocessor. +?S:. +?S:cpp_quote: +?S: This variable is set to either '"' or '' depending on whether the +?S: pre-processor pre-dates ANSI or not. It is used in the production of +?S: the SQuoTe() and EQuoTe() macros, and was introduced to overcome a bug +?S: in gcc 3.x whereby the pre-processor complained loudly about the +?S: unterminated strings. +?S:. +?C:CAT2: +?C: This macro catenates 2 tokens together. +?C:. +?C:CAT3: +?C: This macro catenates 3 tokens together. +?C:. +?C:CAT4: +?C: This macro catenates 4 tokens together. +?C:. +?C:CAT5: +?C: This macro catenates 5 tokens together. +?C:. +?C:STRINGIFY: +?C: This macro surrounds its token with double quotes. +?C:. +?C:SCAT2: +?C: This macro catenates 2 tokens together and stringifies the result. +?C:. +?C:SCAT3: +?C: This macro catenates 3 tokens together and stringifies the result. +?C:. +?C:SCAT4: +?C: This macro catenates 4 tokens together and stringifies the result. +?C:. +?C:SCAT5: +?C: This macro catenates 5 tokens together and stringifies the result. +?C:. +?H:?%<:#if $cpp_stuff == 1 +?H:?CAT2:#define CAT2(a,b)a/**/b +?H:?CAT3:#define CAT3(a,b,c)a/**/b/**/c +?H:?CAT4:#define CAT4(a,b,c,d)a/**/b/**/c/**/d +?H:?CAT5:#define CAT5(a,b,c,d,e)a/**/b/**/c/**/d/**/e +?H:?STRINGIFY:#define STRINGIFY(a)"a" +?H:?%<:#define SQuoTe(a)${cpp_quote}a +?H:?%<:#define EQuoTe(a)a${cpp_quote} +?H:?SCAT2:#define SCAT2(a,b)EQuoTe(SQuoTe(a)b) +?H:?SCAT3:#define SCAT3(a,b,c)EQuoTe(SQuoTe(a)b/**/c) +?H:?SCAT4:#define SCAT4(a,b,c,d)EQuoTe(SQuoTe(a)b/**/c/**/d) +?H:?SCAT5:#define SCAT5(a,b,c,d,e)EQuoTe(SQuoTe(a)b/**/c/**/d/**/e) +?H:?%<:#endif +?H:?%<:#if $cpp_stuff == 42 +?X: The additional level of indirection enables these macros to be +?X: used as arguments to other macros. See K&R 2nd ed., page 231. +?H:?%<:#define CaTiFy(a,b) a ## b +?H:?%<:#define CAT2(a,b) CaTiFy(a,b) +?H:?CAT3:#define CAT3(a,b,c) CAT2(CaTiFy(a,b),c) +?H:?CAT4:#define CAT4(a,b,c,d) CAT2(CaTiFy(a,b), CaTiFy(c,d)) +?H:?CAT5:#define CAT5(a,b,c,d,e) CAT2(CAT2(CaTiFy(a,b), CaTiFy(c,d)), e) +?H:?%<:#define StGiFy(a)# a +?H:?STRINGIFY:#define STRINGIFY(a)StGiFy(a) +?H:?SCAT2:#define SCAT2(a,b)StGiFy(a) StGiFy(b) +?H:?SCAT3:#define SCAT3(a,b,c)StGiFy(a) StGiFy(b) StGiFy(c) +?H:?SCAT4:#define SCAT4(a,b,c,d)StGiFy(a) StGiFy(b) StGiFy(c) StGiFy(d) +?H:?SCAT5:#define SCAT5(a,b,c,d,e)StGiFy(a) StGiFy(b) StGiFy(c) StGiFy(d) StGiFy(e) +?H:?%<:#endif +?H:?%<:#if $cpp_stuff != 1 && $cpp_stuff != 42 +?H:?%<:#include "Bletch: How does this C preprocessor catenate tokens?" +?H:?%<:#endif +?H:. +?W:%<:CAT2 CAT3 CAT4 CAT5 STRINGIFY SCAT2 SCAT3 SCAT4 SCAT5 +?F:!cpp_stuff.c +?LINT:known StGiFy EQuoTe SQuoTe CaTiFy +: how do we catenate cpp tokens here? +echo " " +echo "Checking to see how your cpp does stuff like catenate tokens..." >&4 +cpp_quote='' +$cat >cpp_stuff.c <<'EOCP' +#define RCAT(a,b)a/**/b +#define ACAT(a,b)a ## b +RCAT(Rei,ser) +ACAT(Cir,cus) +EOCP +$cppstdin $cppflags $cppminus cpp_stuff.out 2>&1 +if $contains 'Circus' cpp_stuff.out >/dev/null 2>&1; then + echo "Oh! Smells like ANSI's been here." + echo "We can catify or stringify, separately or together!" + cpp_stuff=42 +elif $contains 'Reiser' cpp_stuff.out >/dev/null 2>&1; then + echo "Ah, yes! The good old days!" + cpp_stuff=1 + $cat >cpp_stuff.c <<'EOCP' +#define SQuoTe(a)"a +#define EQuoTe(a)a" +#define CAT2(a,b)EQuoTe(SQuoTe(a)b) +CAT2(Vic,tory) +EOCP + $cppstdin $cppflags $cppminus cpp_stuff.out 2>&1 + if $contains '"Victory"' cpp_stuff.out >/dev/null 2>&1; then + echo "I'll resort to a cute trick to also be able to stringify." + cpp_quote='"' + else + $cat <&4 +$cat >foo.c <<'EOF' +#define A(x) x +#define B(y) y +A(a)B(b) +EOF +if $cpp foo.c >foo.cpp; $contains ab foo.cpp >/dev/null 2>&1; then + echo "Plain '$cpp' works just fine." + cpp_trad="$cpp" +elif $cpp -traditional foo.c >foo.cpp; \ + $contains ab foo.cpp >/dev/null 2>&1; then + echo "We'll use '$cpp -traditional' to get proper semantics." + cpp_trad="$cpp -traditional" +else + echo "I don't know how to get traditional semantics with '$cpp'." >&4 + cpp_trad="$cpp" +fi +$rm -f foo.c foo.cpp + diff --git a/mcon/U/cppfilecom.U b/mcon/U/cppfilecom.U new file mode 100644 index 0000000..d796ce8 --- /dev/null +++ b/mcon/U/cppfilecom.U @@ -0,0 +1,204 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Orginal Author: Graham Stoney +?RCS: +?RCS: $Log: cppfilecom.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:37 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:cppfilecom cppstdinflags d_cppignhdrs d_cppcanstdin: \ + contains package test Myread Oldconfig Loc Setvar cpp cc cat rm +?MAKE: -pick add $@ %< +?S:cppfilecom: +?S: This variable contains the first part of the string which will invoke +?S: the C preprocessor a file and produce to standard output, preserving +?S: comments. Typical value of "cc -E -C" or "/lib/cpp -C". +?S:. +?S:cppstdinflags: +?S: This variable contains any flags necessary to get cppfilecom to read +?S: from the standard input. +?S:. +?S:d_cppignhdrs: +?S: This symbol conditionally defines CPP_IGN_HDRS if CPP_FILE_COM ignores +?S: *.h files. +?S:. +?S:d_cppcanstdin: +?S: This symbol conditionally defines CPP_CAN_STDIN if CPP_FILE_COM can +?S: read standard input directly. +?S:. +?C:CPP_FILE_COM (CPPFILECOM): +?C: This symbol contains the first part of the string which will invoke +?C: the C preprocessor a file and produce to standard output, preserving +?C: comments. Typical value of "cc -E -C" or "/lib/cpp -C". +?C:. +?C:CPP_STDIN_FLAGS (CPPSTDINFLAGS): +?C: This variable contains any flags necessary to get CPP_FILE_COM to +?C: read from the standard input. +?C:. +?C:CPP_IGN_HDRS (CPPIGNHDRS): +?C: This symbol is defined if CPP_FILE_COM ignores *.h files. +?C:. +?C:CPP_CAN_STDIN (CPPCANSTDIN): +?C: This symbol is defined if CPP_FILE_COM can read standard input +?C: directly. +?C:. +?H:#define CPP_FILE_COM "$cppfilecom" +?H:#define CPP_STDIN_FLAGS "$cppstdinflags" +?H:#$d_cppignhdrs CPP_IGN_HDRS /* does CPP ignore .h files? */ +?H:#$d_cppcanstdin CPP_CAN_STDIN /* can CPP read stdin directly? */ +?H:. +?T:cont +?F:!testcpp.c !testcpp.h !testcpp.out +?LINT:set d_cppcanstdin d_cppignhdrs +?LINT:usefile testcpp.c testcpp.out +: see how we invoke the C preprocessor +$cat <testcpp.c +#define ABC abc +#define XYZ xyz +ABC.XYZ +/* comment */ +EOT +: +if $test "X$cppfilecom" != "X" && \ + $cppfilecom testcpp.c testcpp.out 2>/dev/null && \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 +then + echo "You used to use $cppfilecom so we'll use that again." +elif echo 'Maybe "'$cc' -E -C" will work...' && \ + $cc -E -C testcpp.c testcpp.out 2>/dev/null && \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 +then + echo "It works!" + cppfilecom="$cc -E -C" +elif echo 'Nope...maybe "'"$cc"' -P -C" will work...' && \ + $cc -P -C testcpp.c testcpp.out 2>/dev/null && \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 +then + echo "Yup, that does." + cppfilecom="$cc -P -C" +elif echo 'No such luck, maybe "'"$cpp"' -C" will work...' && \ + $cpp -C testcpp.c testcpp.out 2>/dev/null && \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 +then + echo "Yup, it does." + cppfilecom="$cpp -C" +else + cppfilecom='' + $cat <<'EOM' +I can't find a C preprocessor that will preserve comments. Please name one. +EOM +fi +: +dflt="$cppfilecom" +cont=true +while $test "$cont" ; do + echo " " + rp="How should $package run your preprocessor preserving comments?" + . ./myread + cppfilecom="$ans" + $cppfilecom testcpp.c >testcpp.out 2>&1 + if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 + then + echo "OK, that will do." + cont='' + else + echo "Sorry, I can't get that to work." + fi +done + +@if CPP_IGN_HDRS || d_cppignhdrs +: Now see if it ignores header files. +cp testcpp.c testcpp.h +$cppfilecom testcpp.h >testcpp.out 2>&1 +if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 +then + echo "Terrific; it processes .h files passed on the command line too." + val="$undef" +else + echo "It ignores .h files on the command line; pity." + val="$define" +fi +set d_cppignhdrs +eval $setvar + +@end +@if CPP_STDIN_FLAGS || CPP_CAN_STDIN || cppstdinflags || d_cppcanstdin +: Now see how to send stdin to it. +echo " " +cp testcpp.c testcpp.h +$cppfilecom testcpp.out 2>&1 +if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 +then + echo "Great; and it will read stdin if passed no arguments." + val="$define" + cppstdinflags='' +else + $cppfilecom - testcpp.out 2>&1 + if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 + then + echo "Great; and it can read stdin by passing it '-'." + val="$define" + cppstdinflags='-' + else + $cat <testcpp.out 2>&1 + if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 && \ + $contains comment testcpp.out >/dev/null 2>&1 + then + echo "Good; that works fine." + val="$define" + cppstdinflags="$ans" + else + echo "Sorry, I couldn't get that to work." + fi + fi + done + fi +fi +set d_cppcanstdin +eval $setvar + +@end +: cleanup cpp test files anyway +$rm -f testcpp.* + diff --git a/mcon/U/cppstdin.U b/mcon/U/cppstdin.U new file mode 100644 index 0000000..85d556d --- /dev/null +++ b/mcon/U/cppstdin.U @@ -0,0 +1,249 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: cppstdin.U,v $ +?RCS: Revision 3.0.1.4 1994/10/29 16:08:34 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0.1.3 1994/01/24 14:05:38 ram +?RCS: patch16: comment for CPPLAST was missing +?RCS: +?RCS: Revision 3.0.1.2 1993/12/15 08:18:58 ram +?RCS: patch15: new variables cpprun and cpplast, guaranteed wrapper-free +?RCS: patch15: cppstdin now tries to use cc, even at the cost of a wrapper +?RCS: +?RCS: Revision 3.0.1.1 1993/08/25 14:00:53 ram +?RCS: patch6: remove wrapper when not actually used +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:38 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:cppstdin cppminus cpprun cpplast: contains test Myread Oldconfig Loc \ + cpp +cc rm hint osname gccversion startsh eunicefix +?MAKE: -pick add $@ %< +?S:cppstdin: +?S: This variable contains the command which will invoke the C +?S: preprocessor on standard input and put the output to stdout. +?S: It is primarily used by other Configure units that ask about +?S: preprocessor symbols. +?S:. +?S:cppminus: +?S: This variable contains the second part of the string which will invoke +?S: the C preprocessor on the standard input and produce to standard +?S: output. This variable will have the value "-" if cppstdin needs +?S: a minus to specify standard input, otherwise the value is "". +?S:. +?S:cpprun: +?S: This variable contains the command which will invoke a C preprocessor +?S: on standard input and put the output to stdout. It is guaranteed not +?S: to be a wrapper and may be a null string if no preprocessor can be +?S: made directly available. This preprocessor might be different from the +?S: one used by the C compiler. Don't forget to append cpplast after the +?S: preprocessor options. +?S:. +?S:cpplast: +?S: This variable has the same functionality as cppminus, only it applies to +?S: cpprun and not cppstdin. +?S:. +?C:CPPSTDIN: +?C: This symbol contains the first part of the string which will invoke +?C: the C preprocessor on the standard input and produce to standard +?C: output. Typical value of "cc -E" or "/lib/cpp", but it can also +?C: call a wrapper. See CPPRUN. +?C:. +?C:CPPMINUS: +?C: This symbol contains the second part of the string which will invoke +?C: the C preprocessor on the standard input and produce to standard +?C: output. This symbol will have the value "-" if CPPSTDIN needs a minus +?C: to specify standard input, otherwise the value is "". +?C:. +?C:CPPRUN: +?C: This symbol contains the string which will invoke a C preprocessor on +?C: the standard input and produce to standard output. It needs to end +?C: with CPPLAST, after all other preprocessor flags have been specified. +?C: The main difference with CPPSTDIN is that this program will never be a +?C: pointer to a shell wrapper, i.e. it will be empty if no preprocessor is +?C: available directly to the user. Note that it may well be different from +?C: the preprocessor used to compile the C program. +?C:. +?C:CPPLAST: +?C: This symbol is intended to be used along with CPPRUN in the same manner +?C: symbol CPPMINUS is used with CPPSTDIN. It contains either "-" or "". +?C:. +?H:#define CPPSTDIN "$cppstdin" +?H:#define CPPMINUS "$cppminus" +?H:#define CPPRUN "$cpprun" +?H:#define CPPLAST "$cpplast" +?H:. +?F:cppstdin !testcpp.out !testcpp.c +?T:wrapper x_cpp x_minus ok +: see how we invoke the C preprocessor +echo " " +echo "Now, how can we feed standard input to your C preprocessor..." >&4 +cat <<'EOT' >testcpp.c +#define ABC abc +#define XYZ xyz +ABC.XYZ +EOT +cd .. +if $test ! -f cppstdin; then + echo "$startsh" >cppstdin +if $test "X$osname" = "Xaix" -a "X$gccversion" = X; then +?X: AIX cc -E doesn't show the absolute headerfile +?X: locations but we'll cheat by using the -M flag. + echo 'cat >.$$.c; rm -f .$$.u; '"$cc"' ${1+"$@"} -M -c .$$.c 2>/dev/null; \ + test -s .$$.u && \ + awk '"'"'$2 ~ /\.h$/ { print "# 0 \""$2"\"" }'"'"' .$$.u; \ + rm -f .$$.o .$$.u; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >> cppstdin +else + echo 'cat >.$$.c; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >>cppstdin +fi; else + echo "Keeping your $hint cppstdin wrapper." +fi +chmod 755 cppstdin +$eunicefix cppstdin +wrapper=`pwd`/cppstdin +ok='false' +cd UU + +?X: +?X: We'll run the cpp tests again if we don't have any valid C preprocessor +?X: yet or don't know how to proceed without a wrapper (in which case cpprun +?X: is empty and that's really annoying...) +?X: +if $test "X$cppstdin" != "X" && \ + $cppstdin $cppminus testcpp.out 2>&1 && \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 +then + echo "You used to use $cppstdin $cppminus so we'll use that again." + case "$cpprun" in + '') echo "But let's see if we can live without a wrapper..." ;; + *) + if $cpprun $cpplast testcpp.out 2>&1 && \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 + then + echo "(And we'll use $cpprun $cpplast to preprocess directly.)" + ok='true' + else + echo "(However, $cpprun $cpplast does not work, let's see...)" + fi + ;; + esac +else + case "$cppstdin" in + '') ;; + *) + echo "Good old $cppstdin $cppminus does not seem to be of any help..." + ;; + esac +fi + +if $ok; then + : nothing +elif echo 'Maybe "'"$cc"' -E" will work...'; \ + $cc -E testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "Yup, it does." + x_cpp="$cc -E" + x_minus=''; +elif echo 'Nope...maybe "'"$cc"' -E -" will work...'; \ + $cc -E - testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "Yup, it does." + x_cpp="$cc -E" + x_minus='-'; +elif echo 'Nope...maybe "'"$cc"' -P" will work...'; \ + $cc -P testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "Yipee, that works!" + x_cpp="$cc -P" + x_minus=''; +elif echo 'Nope...maybe "'"$cc"' -P -" will work...'; \ + $cc -P - testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "At long last!" + x_cpp="$cc -P" + x_minus='-'; +elif echo 'No such luck, maybe "'$cpp'" will work...'; \ + $cpp testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "It works!" + x_cpp="$cpp" + x_minus=''; +elif echo 'Nixed again...maybe "'$cpp' -" will work...'; \ + $cpp - testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "Hooray, it works! I was beginning to wonder." + x_cpp="$cpp" + x_minus='-'; +elif echo 'Uh-uh. Time to get fancy. Trying a wrapper...'; \ + $wrapper testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + x_cpp="$wrapper" + x_minus='' + echo "Eureka!" +else + dflt='' + rp="No dice. I can't find a C preprocessor. Name one:" + . ./myread + x_cpp="$ans" + x_minus='' + $x_cpp testcpp.out 2>&1 + if $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 ; then + echo "OK, that will do." >&4 + else +echo "Sorry, I can't get that to work. Go find one and rerun Configure." >&4 + exit 1 + fi +fi + +case "$ok" in +false) + cppstdin="$x_cpp" + cppminus="$x_minus" + cpprun="$x_cpp" + cpplast="$x_minus" +?X: +?X: If /lib/cpp is used, try using a wrapper to increase our chances to have +?X: the C compiler and our $cppstdin agree on the same symbols... However, +?X: since cpprun is guaranteed not to be a wrapper, we must clear it if the +?X: only preprocessor we found was a wrapper, with all our luck... +?X: + set X $x_cpp + shift + case "$1" in + "$cpp") + echo "Perhaps can we force $cc -E using a wrapper..." + if $wrapper testcpp.out 2>&1; \ + $contains 'abc.*xyz' testcpp.out >/dev/null 2>&1 + then + echo "Yup, we can." + cppstdin="$wrapper" + cppminus=''; + else + echo "Nope, we'll have to live without it..." + fi + ;; + esac + case "$cpprun" in + "$wrapper") + cpprun='' + cpplast='' + ;; + esac + ;; +esac + +case "$cppstdin" in +"$wrapper"|'cppstdin') ;; +*) $rm -f $wrapper;; +esac +$rm -f testcpp.c testcpp.out + diff --git a/mcon/U/d_NOFILE.U b/mcon/U/d_NOFILE.U new file mode 100644 index 0000000..7685cd1 --- /dev/null +++ b/mcon/U/d_NOFILE.U @@ -0,0 +1,189 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_NOFILE.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:08:38 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:39 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:nofile d_gettblsz tablesize: Myread Guess cat +cc +ccflags +libs \ + test rm Csym +?MAKE: -pick add $@ %< +?S:nofile: +?S: This variable contains the number of file descriptors available to the +?S: process. +?S:. +?S:d_gettblsz: +?S: This variable conditionally handles remapping of the getdtablesize() +?S: subroutine to ulimit(4,0), or the NOFILE manifest constant. +?S:. +?S:tablesize: +?S: This variable contains either the 'NOFILE' constant or 'ulimit(4, 0L)' +?S: and is used as the remapped value for the getdtablesize() macro. +?S:. +?C:getdtablesize: +?C: This catches use of the getdtablesize() subroutine, and remaps it +?C: to either ulimit(4,0) or NOFILE, if getdtablesize() isn't available. +?C:. +?C:VAL_NOFILE: +?C: This symbol contains the number of file descriptors available to the +?C: process, as determined at configuration time. Unless a static constant +?C: is needed, you should rely on getdtablesize() to obtain that number. +?C:. +?H:#$d_gettblsz getdtablesize() $tablesize /**/ +?H:#define VAL_NOFILE $nofile /* Number of file descriptors */ +?H:. +?F:!nofile +?T:d_ulimit4 val +: see if getdtablesize exists +echo " " +?X: Revert logical value (d_gettblsz is undef iff getdtablesize is present) +case "$d_gettblsz" in +$define) d_gettblsz="$undef";; +$undef) d_gettblsz="$define";; +esac +if set getdtablesize val -f d_gettblsz; eval $csym; $val; then + echo 'getdtablesize() found.' >&4 + d_gettblsz="$undef" + tablesize='' +@if VAL_NOFILE || nofile + $cat >nofile.c <<'EOCP' +#include +int main() +{ + printf("%d\n", getdtablesize()); +} +EOCP + nofile='' + if $cc $ccflags -o nofile nofile.c $libs >/dev/null 2>&1; then + nofile=`./nofile 2>/dev/null` + fi + if $test "$nofile"; then + echo "(You have $nofile file descriptors available per process.)" + else + nofile='20' + if ./bsd; then + nofile='64' + fi + echo "(Hmm... Let's say you have $nofile file descriptors available.)" + fi +@end +else + echo 'getdtablesize() NOT found...' >&4 + if set ulimit val -f; eval $csym; $val; then + echo 'Maybe ulimit(4,0) will work...' + $cat >nofile.c <<'EOCP' +#include +#ifdef GETPARAM_H +#include +#endif +int main() +{ + printf("%d %d\n", +#ifdef NOFILE + NOFILE, +#else + 0, +#endif + ulimit(4,0)); + exit(0); +} +EOCP + if $cc $ccflags -DGETPARAM_H -o nofile nofile.c $libs >/dev/null 2>&1 \ + || $cc $ccflags -o nofile nofile.c $libs >/dev/null 2>&1 ; then + set `./nofile` + d_gettblsz=$1 + d_ulimit4=$2 + if $test "$d_ulimit4" -lt 0; then + echo "Your ulimit() call doesn't tell me what I want to know." + echo "We'll just use NOFILE in this case." + nofile=$d_gettblsz + d_gettblsz="$define" + tablesize='NOFILE' + else + if $test "$d_gettblsz" -gt 0; then + echo "Your system defines NOFILE to be $d_gettblsz, and" >&4 + else + echo "I had trouble getting NOFILE from your system, but" >&4 + fi +echo "ulimit returns $d_ulimit4 as the number of available file descriptors." >&4 + dflt='y'; + echo " " + rp='Should I use ulimit to get the number of available file descriptors?' + . ./myread + case "$ans" in + y*) + nofile=$d_ulimit4 + d_gettblsz="$define" + tablesize='ulimit(4, 0L)' + echo "Using ulimit(4,0)." + ;; + *) + nofile=$d_gettblsz + d_gettblsz="$define" + tablesize='NOFILE' + echo "Using NOFILE." + ;; + esac + fi + else + echo "Strange, I couldn't get my test program to compile." + echo "We'll just use NOFILE in this case." + d_gettblsz="$define" + tablesize='NOFILE' + nofile='' + fi + else + echo 'Using NOFILE instead.' + d_gettblsz="$define" + tablesize='NOFILE' + nofile='' + fi +fi +@if VAL_NOFILE || nofile +case "$nofile" in +'') + $cat >nofile.c <<'EOCP' +#include +#ifdef GETPARAM_H +#include +#endif +int main() +{ + printf("%d\n", +#ifdef NOFILE + NOFILE, +#else + 0, +#endif + ); + exit(0); +} +EOCP + if $cc $ccflags -DGETPARAM_H -o nofile nofile.c $libs >/dev/null 2>&1 \ + || $cc $ccflags -o nofile nofile.c $libs >/dev/null 2>&1 ; then + nofile=`./nofile 2>/dev/null` + fi + if $test "$nofile"; then + echo "(You have $nofile file descriptors available per process.)" + else + nofile='20' + if ./bsd; then + nofile='64' + fi + echo "(Hmm... Let's say you have $nofile file descriptors available.)" + fi + ;; +esac +@end +$rm -f nofile* + diff --git a/mcon/U/d_NeWS.U b/mcon/U/d_NeWS.U new file mode 100644 index 0000000..29d1539 --- /dev/null +++ b/mcon/U/d_NeWS.U @@ -0,0 +1,101 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_NeWS.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:39 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_news d_news0 d_newshome d_textcan: test rm Myread Getfile +?MAKE: -pick add $@ %< +?S:d_news: +?S: Set if running NeWS 1.1 +?S:. +?S:d_news0: +?S: Set if running NeWS 1.0 +?S:. +?S:d_newshome: +?S: Path to the top directory of the NeWS structure. +?S:. +?S:d_textcan: +?S: Path to where the textcan.ps stuff is... +?S:. +?C:HAS_NEWS1_1 (NEWS1_1): +?C: This symbol defined if running NeWS 1.1. +?C:. +?C:HAS_NEWS1_0 (NEWS1_0): +?C: This symbol defined if running NeWS 1.0. +?C:. +?C:TEXTCAN: +?C: Tells path to where the textcan.ps stuff is... +?C:. +?H:#$d_news HAS_NEWS1_1 /**/ +?H:#$d_news0 HAS_NEWS1_0 /**/ +?H:#define TEXTCAN $d_textcan /**/ +?H:. +?INIT:: default path for NeWS +?INIT:d_newshome="/usr/NeWS" +?INIT: +: Check to see what version of NeWS is being run? +cd .. +echo " " +echo "Now for the interesting stuff... Lets see what kind of NeWS" +echo "they grow round here...." +echo " " +dflt='y' +if $test -d $d_newshome; then + d_newshome=`(cd $d_newshome ; /bin/pwd)` + echo "Ah...found myself a NeWS in $d_newshome..." + dflt='y' + rp="Is this the NeWS you want your children to grow up with?" + . UU/myread +fi +while $test $ans = "n"; do +dflt=$d_newshome +fn=d +rp="Path to NeWS you want:" +. UU/getfile +d_newshome=$ans + +echo " " +if $test ! -d $d_newshome/lib; then + echo "ARG! No lib directory in $d_newshome!!!" + : heavy medicine. I wonder what the disease is... + $rm -f kit*isdone + $rm -rf UU + : bye bye + set -t; echo "Sorry... no NeWS is bad news..." +fi + +if $test -r $d_newshome/lib/NeWS/colors.ps ; then + echo 'Ahh... your running NeWS 1.1! Boy... that makes stuff easy....' + echo " " + d_news="$define" + d_news0="$undef" + if $test -r $d_newshome/lib/NeWS/textcan.ps; then + d_textcan=$d_newshome/lib/NeWS + echo "The textcan.ps stuff seems to be in : $d_textcan" + else + d_textcan=$d_newshome/clientsrc/client/nterm + if $test ! -r $d_textcan/textcan.ps; then + d_news="$undef" + d_news0="$define" + echo 'Hmm... must have been fooled... gotta be NeWS 1.1 beta!' + else + echo "The textcan.ps stuff seems to be in : $d_textcan" + fi + fi +else + echo 'snif... snif... I smell the dilapidated smell of NeWS 1.0..' + echo 'Some things will not work under NeWS 1.0...' + d_news="$undef" + d_news0="$define" +fi +cd UU + diff --git a/mcon/U/d_PORTAR.U b/mcon/U/d_PORTAR.U new file mode 100644 index 0000000..55251c7 --- /dev/null +++ b/mcon/U/d_PORTAR.U @@ -0,0 +1,79 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_PORTAR.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:08:42 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:40 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_PORTAR: cat +cc rm Setvar +?MAKE: -pick add $@ %< +?S:d_PORTAR: +?S: This variable conditionally handles definition of PORTAR, +?S: a creation of greater minds than I can imagine. +?S:. +?C:PORTAR: +?C: This manifest constant must be defined to 1 for some implementations +?C: of ar.h to get the portable ar most everybody uses. +?C:. +?L:ar_fmag: +?L:ARFMAG: +?L:SARMAG: +?H:#$d_PORTAR PORTAR 1 /**/ +?H:. +?F:!portar +?LINT:set d_PORTAR +: see if we need to define PORTAR +echo " " +echo 'Checking to see if we need to define PORTAR for portable archives...' >&4 +$cat >portar.c <<'EOCP' +#include +int main() { + char *arfmag = ARFMAG; + int sarmag = SARMAG; + struct ar_hdr arh; + + strncpy(arh.ar_fmag, arfmag, 2); + +#ifdef PORTAR + printf("D\n"); +#else + printf("U\n"); +#endif + exit(0);} +EOCP +if $cc -o portar portar.c >/dev/null 2>&1 || \ + $cc -DPORTAR=1 -o portar portar.c >/dev/null 2>&1 ; then + case "`./portar`" in + D) + val="$define" + echo "We'll be defining PORTAR for you." + ;; + U) + val="$undef" + echo "We don't seem to need PORTAR defined here." + ;; + *) + val="$define" + echo "(My test program gave me an unexpected value!)" + echo "I'll just define PORTAR to be sure." + ;; + esac +else + echo "(Strange, I couldn't get my test program to compile.)" + echo "We'll just define PORTAR in this case." + val="$define" +fi +set d_PORTAR +eval $setvar +$rm -f portar* + diff --git a/mcon/U/d_SHM_MAC.U b/mcon/U/d_SHM_MAC.U new file mode 100644 index 0000000..f8e87aa --- /dev/null +++ b/mcon/U/d_SHM_MAC.U @@ -0,0 +1,141 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_SHM_MAC.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:41 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_SHM_MAC d_SHM_PRM d_SHM_SEG d_SHM_IMMU: cat d_shm test rm +cc +ccflags +?MAKE: -pick add $@ %< +?S:d_SHM_MAC: +?S: Sometimes, the SHMLBA manifest needs sys/sysmacros.h, usually for +?S: the ctob() macro. +?S:. +?S:d_SHM_PRM: +?S: Sometimes, the SHMLBA manifest needs sys/param.h, usually for the +?S: NBPC constant. +?S:. +?S:d_SHM_SEG: +?S: Sometimes, the SHMLBA manifest needs sys/seg.h, usually for the +?S: SNUMSHFT constant. +?S:. +?S:d_SHM_IMMU: +?S: Sometimes, the SHMLBA manifest needs sys/immu.h, usually for the +?S: stob() macro. +?S:. +?C:SHMLBA_WANTS_SYSMACROS: +?C: This value tells us to include because SHMLBA +?C: needs something from there, probably the ctob() macro. +?C:. +?C:SHMLBA_WANTS_PARAM: +?C: This value tells us to include because SHMLBA needs +?C: something from there, probably the NBPC constant. +?C:. +?C:SHMLBA_WANTS_SEG: +?C: This value tells us to include because SHMLBA needs +?C: something from there, probably the SNUMSHFT constant. +?C:. +?C:SHMLBA_WANTS_IMMU: +?C: This value tells us to include because SHMLBA needs +?C: something from there, probably the stob() macro. (tower_600 only?) +?C:. +?H:#$d_SHM_MAC SHMLBA_WANTS_SYSMACROS /* SHMLBA wants ctob()? */ +?H:#$d_SHM_PRM SHMLBA_WANTS_PARAM /* SHMLBA wants NBPC? */ +?H:#$d_SHM_SEG SHMLBA_WANTS_SEG /* SHMLBA wants SNUMSHFT? */ +?H:#$d_SHM_IMMU SHMLBA_WANTS_IMMU /* SHMLBA wants stob()? */ +?H:. +?T:flags D_sys_immu D_sys_seg D_sys_sysmacros D_sys_param +: check for SHMLBA braindamage +d_SHM_MAC="$undef" +d_SHM_PRM="$undef" +d_SHM_SEG="$undef" +d_SHM_IMMU="$undef" +if $test "$d_shm" = "$define" ; then + echo " " + $cat >&4 <shm_mac.c <<'EOCP' +#include +#include +#include +#ifdef I_SYS_IMMU +#include +#endif +#ifdef I_SYS_SYSMACROS +#include +#endif +#ifdef I_SYS_PARAM +#include +#endif +#ifdef I_SYS_SEG +#include +#endif + +int main() { + int foo = SHMLBA ; + } +EOCP + flags='xxx' + for D_sys_immu in '' '-DI_SYS_IMMU'; do + for D_sys_seg in '' '-DI_SYS_SEG'; do + for D_sys_sysmacros in '' '-DI_SYS_SYSMACROS'; do + for D_sys_param in '' '-DI_SYS_PARAM'; do + case "$flags" in + 'xxx') + case "$D_sys_immu$D_sys_param$D_sys_sysmacros$D_sys_seg" in + '') + echo "Trying it normally..." + ;; + *) + echo "Trying $D_sys_immu $D_sys_param $D_sys_sysmacros $D_sys_seg" + ;; + esac + if $cc $ccflags \ + $D_sys_immu $D_sys_param $D_sys_sysmacros $D_sys_seg \ + -o shm_mac shm_mac.c >/dev/null 2>&1 ; then + set X $D_sys_immu $D_sys_param $D_sys_sysmacros $D_sys_seg + shift + flags="$*" + echo "Succeeded with $flags" + fi + ;; + esac + done + done + done + done + case "$flags" in + xxx) + echo "I don't know how to keep SHMLBA happy. Good luck!" + ;; + esac + case "$flags" in + *I_SYS_PARAM*) d_SHM_PRM="$define";; + esac + case "$flags" in + *I_SYS_SYSMACROS*) d_SHM_MAC="$define";; + esac + case "$flags" in + *I_SYS_SEG*) d_SHM_SEG="$define";; + esac + case "$flags" in + *I_SYS_IMMU*) d_SHM_IMMU="$define";; + esac +fi +$rm -f shm_mac* + diff --git a/mcon/U/d_access.U b/mcon/U/d_access.U new file mode 100644 index 0000000..2e1db7d --- /dev/null +++ b/mcon/U/d_access.U @@ -0,0 +1,74 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_access.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:42 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_access: test +cc cat +cppflags h_fcntl h_sysfile rm Inlibc Findhdr +?MAKE: -pick add $@ %< +?S:d_access: +?S: This variable conditionally defines HAS_ACCESS if the access() system +?S: call is available to check for access permissions using real IDs. +?S:. +?C:HAS_ACCESS: +?C: This manifest constant lets the C program know that the access() +?C: system call is available to check for accessibility using real UID/GID. +?C: (always present on UNIX.) +?C:. +?H:#$d_access HAS_ACCESS /**/ +?H:. +?W:%<:R_OK W_OK X_OK F_OK +?LINT:set d_access +?LINT:change h_fcntl h_sysfile +: access call always available on UNIX +set access d_access +eval $inlibc + +: locate the flags for 'access()' +case "$d_access" in +"$define") + echo " " + $cat >access.c <<'EOCP' +#include +#ifdef I_FCNTL +#include +#endif +#ifdef I_SYS_FILE +#include +#endif +#ifdef I_UNISTD +#include +#endif +int main() { + exit(R_OK); +} +EOCP + : check sys/file.h first, no particular reason here + if $test `./findhdr sys/file.h` && \ + $cc -o access $cppflags -DI_SYS_FILE access.c >/dev/null 2>&1 ; then + h_sysfile=true; + echo " defines the *_OK access constants." >&4 + elif $test `./findhdr fcntl.h` && \ + $cc -o access $cppflags -DI_FCNTL access.c >/dev/null 2>&1 ; then + h_fcntl=true; + echo " defines the *_OK access constants." >&4 +@if I_UNISTD + elif $test `./findhdr unistd.h` && \ + $cc -o access $cppflags -DI_UNISTD access.c >/dev/null 2>&1 ; then + echo " defines the *_OK access constants." >&4 +@end + else + echo "I can't find the four *_OK access constants--I'll use mine." >&4 + fi + ;; +esac +$rm -f access* + diff --git a/mcon/U/d_alarm.U b/mcon/U/d_alarm.U new file mode 100644 index 0000000..589d125 --- /dev/null +++ b/mcon/U/d_alarm.U @@ -0,0 +1,33 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_alarm.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:06:58 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_alarm: Inlibc +?MAKE: -pick add $@ %< +?S:d_alarm: +?S: This variable conditionally defines the HAS_ALARM symbol, which +?S: indicates to the C program that the alarm() routine is available. +?S:. +?C:HAS_ALARM : +?C: This symbol, if defined, indicates that the alarm routine is +?C: available. +?C:. +?H:#$d_alarm HAS_ALARM /**/ +?H:. +?LINT:set d_alarm +: see if alarm exists +set alarm d_alarm +eval $inlibc + diff --git a/mcon/U/d_attribut.U b/mcon/U/d_attribut.U new file mode 100644 index 0000000..8ff5422 --- /dev/null +++ b/mcon/U/d_attribut.U @@ -0,0 +1,64 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_attribut.U,v $ +?RCS: Revision 3.0.1.3 1995/01/30 14:33:45 ram +?RCS: patch49: test C program now includes (WED) +?RCS: +?RCS: Revision 3.0.1.2 1995/01/11 15:25:47 ram +?RCS: patch45: fixed typo in the d_attribut variable (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:08:55 ram +?RCS: patch36: created by ADO +?RCS: +?MAKE:d_attribut: Myread Oldconfig cat cc ccflags rm Setvar contains +?MAKE: -pick add $@ %< +?S:d_attribut (d_attrib): +?S: This variable conditionally defines HASATTRIBUTE, which +?S: indicates the C compiler can check for function attributes, +?S: such as printf formats. +?S:. +?C:HASATTRIBUTE ~ %< (GNUC_ATTRIBUTE_CHECK): +?C: This symbol indicates the C compiler can check for function attributes, +?C: such as printf formats. This is normally only supported by GNU cc. +?C:. +?H:?%<:#$d_attribut HASATTRIBUTE /**/ +?H:?%<:#ifndef HASATTRIBUTE +?H:?%<:#define __attribute__(_arg_) +?H:?%<:#endif +?H:. +?W:%<:__attribute__ +?LINT:set d_attribut +?LINT:known __attribute__ +: Look for GNU-cc style attribute checking +echo " " +echo "Checking whether your compiler can handle __attribute__ ..." >&4 +$cat >attrib.c <<'EOCP' +#include +void croak (char* pat,...) __attribute__((format(printf,1,2),noreturn)); +EOCP +if $cc $ccflags -c attrib.c >attrib.out 2>&1 ; then + if $contains 'warning' attrib.out >/dev/null 2>&1; then + echo "Your C compiler doesn't fully support __attribute__." + val="$undef" + else + echo "Your C compiler supports __attribute__." + val="$define" + fi +else + echo "Your C compiler doesn't seem to understand __attribute__ at all." + val="$undef" +fi +set d_attribut +eval $setvar +$rm -f attrib* + diff --git a/mcon/U/d_bcmp.U b/mcon/U/d_bcmp.U new file mode 100644 index 0000000..ae2e4bd --- /dev/null +++ b/mcon/U/d_bcmp.U @@ -0,0 +1,44 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_bcmp.U,v $ +?RCS: Revision 3.0.1.2 1993/10/16 13:47:52 ram +?RCS: patch12: added magic support for bcmp() +?RCS: +?RCS: Revision 3.0.1.1 1993/09/13 16:00:44 ram +?RCS: patch10: now only defines HAS_BCMP, no macro remap on memcmp (WAD) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:42 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_bcmp: Inlibc +?MAKE: -pick add $@ %< +?S:d_bcmp: +?S: This variable conditionally defines the HAS_BCMP symbol if +?S: the bcmp() routine is available to compare strings. +?S:. +?C:HAS_BCMP: +?C: This symbol is defined if the bcmp() routine is available to +?C: compare blocks of memory. +?C:. +?H:#$d_bcmp HAS_BCMP /**/ +?H:. +?M:bcmp: HAS_BCMP +?M:#ifndef HAS_BCMP +?M:#ifndef bcmp +?M:#define bcmp(s,d,l) memcmp((s),(d),(l)) +?M:#endif +?M:#endif +?M:. +?LINT:set d_bcmp +: see if bcmp exists +set bcmp d_bcmp +eval $inlibc + diff --git a/mcon/U/d_bcopy.U b/mcon/U/d_bcopy.U new file mode 100644 index 0000000..2ae3ad8 --- /dev/null +++ b/mcon/U/d_bcopy.U @@ -0,0 +1,44 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_bcopy.U,v $ +?RCS: Revision 3.0.1.2 1993/10/16 13:48:04 ram +?RCS: patch12: added magic support for bcopy() +?RCS: +?RCS: Revision 3.0.1.1 1993/09/13 16:01:11 ram +?RCS: patch10: now only defines HAS_BCOPY, no macro remap on memcpy (WAD) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:44 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_bcopy: Inlibc +?MAKE: -pick add $@ %< +?S:d_bcopy: +?S: This variable conditionally defines the HAS_BCOPY symbol if +?S: the bcopy() routine is available to copy strings. +?S:. +?C:HAS_BCOPY: +?C: This symbol is defined if the bcopy() routine is available to +?C: copy blocks of memory. +?C:. +?H:#$d_bcopy HAS_BCOPY /**/ +?H:. +?M:bcopy: HAS_BCOPY +?M:#ifndef HAS_BCOPY +?M:#ifndef bcopy +?M:#define bcopy(s,d,l) memcpy((d),(s),(l)) +?M:#endif +?M:#endif +?M:. +?LINT:set d_bcopy +: see if bcopy exists +set bcopy d_bcopy +eval $inlibc + diff --git a/mcon/U/d_brokstat.U b/mcon/U/d_brokstat.U new file mode 100644 index 0000000..a330dba --- /dev/null +++ b/mcon/U/d_brokstat.U @@ -0,0 +1,75 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_brokstat.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 15:30:53 ram +?RCS: patch61: created +?RCS: +?MAKE:d_brokstat: cat contains cppstdin cppminus +cppflags rm Setvar +?MAKE: -pick add $@ %< +?S:d_brokstat: +?S: This variable conditionally defines STAT_MACROS_BROKEN if some +?S: of the S_IS*() macros from give false positive on +?S: regular files. +?S:. +?C:STAT_MACROS_BROKEN: +?C: This symbol, if defined, indicates that the S_IS*() stat macros +?C: such as S_ISBLK() give false positive and are thus unusable. +?C: Your best bet is then to supply your own set. +?C:. +?H:#$d_brokstat STAT_MACROS_BROKEN /**/ +?H:. +?F:!try.c !try +?LINT:set d_brokstat +?LINT:usefile try +?X: This test inspired by autoconf -- RAM, 28/02/97 +: are stat macros sane? +echo " " +echo "Checking whether your stat() macros are broken..." +$cat >try.c <<'EOC' +#include +#include + +#if defined(S_ISBLK) && defined(S_IFDIR) +#if S_ISBLK(S_IFDIR) +Broken +#endif +#endif + +#if defined(S_ISBLK) && defined(S_IFCHR) +#if S_ISBLK(S_IFCHR) +Broken +#endif +#endif + +#if defined(S_ISLNK) && defined(S_IFREG) +#if S_ISLNK(S_IFREG) +Broken. +#endif +#endif + +#if defined(S_ISSOCK) && defined(S_IFREG) +#if S_ISSOCK(S_IFREG) +Broken. +#endif +#endif +EOC +$cppstdin $cppflags $cppminus /dev/null >try +if $contains Broken try >/dev/null 2>&1; then + echo "Alas, they are. I'll use my own macro set then." >&4 + val="$define" +else + echo "Nope, working just fine." >&4 + val="$undef" +fi +$rm -f try try.c +set d_brokstat +eval $setvar + diff --git a/mcon/U/d_bsdjmp.U b/mcon/U/d_bsdjmp.U new file mode 100644 index 0000000..da2f496 --- /dev/null +++ b/mcon/U/d_bsdjmp.U @@ -0,0 +1,86 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_bsdjmp.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 15:31:10 ram +?RCS: patch61: added ?F: metalint hint +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:09:09 ram +?RCS: patch36: call ./usg explicitely instead of relying on PATH +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:45 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_bsdjmp: Guess Setvar cat +cc libs rm +?MAKE: -pick add $@ %< +?S:d_bsdjmp: +?S: This variable conditionally defines USE_BSDJMP if BSD _setjmp and +?S: _longjmp routines are available to do non-local gotos without saving +?S: or restoring the signal mask flag. +?S:. +?C:USE_BSDJMP (BSDJMP): +?C: This symbol, if defined, indicates that the BSD _setjmp and _longjmp +?C: routines are available to do non-local gotos wihtout saving or restoring +?C: the signal mask flag. +?C:. +?H:#$d_bsdjmp USE_BSDJMP /**/ +?H:. +?F:!set +?LINT:set d_bsdjmp +: see if _setjmp and _longjmp exists +?X: We can't check for these symbols with Inlibc because of the leading "_" +echo " " +case "$d_bsdjmp" in +'') + $cat >set.c < +jmp_buf env; +int set = 1; +int main() +{ + if (_setjmp(env)) + exit(set); + set = 0; + _longjmp(env, 1); + exit(1); +} +EOP + if $cc -o set set.c $libs >/dev/null 2>&1; then + if ./set >/dev/null 2>&1; then + echo "Good! You have BSD _setjmp and _longjmp routines." >&4 + val="$define" + else + $cat <&4 + else + cat <&4;; + $undef) echo "You do not have _setjmp and _longjmp, but that's fine." >&4;; + esac + ;; +esac +set d_bsdjmp +eval $setvar +$rm -f set.c set + diff --git a/mcon/U/d_byacc.U b/mcon/U/d_byacc.U new file mode 100644 index 0000000..aa02d79 --- /dev/null +++ b/mcon/U/d_byacc.U @@ -0,0 +1,33 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1996, Andy Dougherty +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_byacc.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 15:31:14 ram +?RCS: patch61: created +?RCS: +?MAKE:d_byacc: byacc Setvar +?MAKE: -pick add $@ %< +?S:d_byacc: +?S: This variable indicates whether byacc is available. +?S: If the user has specified 'portability', then Makefile.SH +?S: sees $byacc='byacc' whether or not the user actually has +?S: byacc. This variable allows us to determine in a makefile +?S: if we really have byacc. +?S:. +?LINT:set d_byacc +: Check if we really have byacc +case "$byacc" in +''|'byacc') val="$undef" ;; +*) val="$define" ;; +esac +set d_byacc +eval $setvar + diff --git a/mcon/U/d_bzero.U b/mcon/U/d_bzero.U new file mode 100644 index 0000000..6c7d87b --- /dev/null +++ b/mcon/U/d_bzero.U @@ -0,0 +1,44 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_bzero.U,v $ +?RCS: Revision 3.0.1.2 1993/10/16 13:48:15 ram +?RCS: patch12: added magic support for bzero() +?RCS: +?RCS: Revision 3.0.1.1 1993/09/13 16:01:33 ram +?RCS: patch10: now only defines HAS_BZERO, no macro remap on memset (WAD) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:46 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_bzero: Inlibc +?MAKE: -pick add $@ %< +?S:d_bzero: +?S: This variable conditionally defines the HAS_BZERO symbol if +?S: the bzero() routine is available to set memory to 0. +?S:. +?C:HAS_BZERO: +?C: This symbol is defined if the bzero() routine is available to +?C: set a memory block to 0. +?C:. +?H:#$d_bzero HAS_BZERO /**/ +?H:. +?M:bzero: HAS_BZERO +?M:#ifndef HAS_BZERO +?M:#ifndef bzero +?M:#define bzero(s,l) memset((s),0,(l)) +?M:#endif +?M:#endif +?M:. +?LINT:set d_bzero +: see if bzero exists +set bzero d_bzero +eval $inlibc + diff --git a/mcon/U/d_casti32.U b/mcon/U/d_casti32.U new file mode 100644 index 0000000..7d24f08 --- /dev/null +++ b/mcon/U/d_casti32.U @@ -0,0 +1,87 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_casti32.U,v $ +?RCS: Revision 3.0.1.3 1995/05/12 12:10:45 ram +?RCS: patch54: made sure cc and ccflags are conditional dependencies +?RCS: +?RCS: Revision 3.0.1.2 1994/10/29 16:09:37 ram +?RCS: patch36: declare signal handler correctly (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/08/29 16:07:06 ram +?RCS: patch32: created by ADO +?RCS: +?X: +?X: Can the compiler cast large floats to 32-bit integers? +?X: +?MAKE:d_casti32: cat +cc +ccflags rm intsize Setvar test signal_t +?MAKE: -pick add $@ %< +?S:d_casti32: +?S: This variable conditionally defines CASTI32, which indicates +?S: whether the C compiler can cast large floats to 32-bit ints. +?S:. +?C:CASTI32: +?C: This symbol is defined if the C compiler can cast negative +?C: or large floating point numbers to 32-bit ints. +?C:. +?T:xxx yyy +?H:#$d_casti32 CASTI32 /**/ +?H:. +?F:!try +?LINT:set d_casti32 +: check for ability to cast large floats to 32-bit ints. +echo " " +echo 'Checking whether your C compiler can cast large floats to int32.' >&4 +if $test "$intsize" -eq 4; then + xxx=int +else + xxx=long +fi +$cat >try.c < +#include +$signal_t blech() { exit(3); } +int main() +{ + $xxx i32; + double f; + int result = 0; + signal(SIGFPE, blech); + + f = (double) 0x7fffffff; + f = 10 * f; + i32 = ($xxx) f; + + if (i32 != ($xxx) f) + result |= 1; + exit(result); +} +EOCP +if $cc $ccflags -o try try.c >/dev/null 2>&1; then + ./try + yyy=$? +else + echo "(I can't seem to compile the test program--assuming it can't)" + yyy=1 +fi +case "$yyy" in +0) val="$define" + echo "Yup, it can." + ;; +*) val="$undef" + echo "Nope, it can't." + ;; +esac +set d_casti32 +eval $setvar +$rm -f try try.* + diff --git a/mcon/U/d_castneg.U b/mcon/U/d_castneg.U new file mode 100644 index 0000000..ce879df --- /dev/null +++ b/mcon/U/d_castneg.U @@ -0,0 +1,143 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_castneg.U,v $ +?RCS: Revision 3.0.1.2 1995/05/12 12:11:21 ram +?RCS: patch54: made sure cc and ccflags are conditional dependencies +?RCS: patch54: added improved test case for Interactive Unix +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:10:50 ram +?RCS: patch36: don't forget to tell user about compilation failures (ADO) +?RCS: patch36: declare signal handler correctly using 'signal_t' (ADO) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:47 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?X: +?X: Can the compiler cast negative / odd floats to unsigned values. +?X: +?MAKE:d_castneg castflags: cat +cc +ccflags rm Setvar signal_t +?MAKE: -pick add $@ %< +?S:d_castneg: +?S: This variable conditionally defines CASTNEG, which indicates +?S: wether the C compiler can cast negative float to unsigned. +?S:. +?S:castflags: +?S: This variable contains a flag that precise difficulties the +?S: compiler has casting odd floating values to unsigned long: +?S: 0 = ok +?S: 1 = couldn't cast < 0 +?S: 2 = couldn't cast >= 0x80000000 +?S: 4 = couldn't cast in argument expression list +?S:. +?C:CASTNEGFLOAT: +?C: This symbol is defined if the C compiler can cast negative +?C: numbers to unsigned longs, ints and shorts. +?C:. +?C:CASTFLAGS: +?C: This symbol contains flags that say what difficulties the compiler +?C: has casting odd floating values to unsigned long: +?C: 0 = ok +?C: 1 = couldn't cast < 0 +?C: 2 = couldn't cast >= 0x80000000 +?C: 4 = couldn't cast in argument expression list +?C:. +?H:#$d_castneg CASTNEGFLOAT /**/ +?H:#define CASTFLAGS $castflags /**/ +?H:. +?F:!try +?LINT:set d_castneg +: check for ability to cast negative floats to unsigned +echo " " +echo 'Checking whether your C compiler can cast negative float to unsigned.' >&4 +$cat >try.c < +#include +$signal_t blech() { exit(7); } +$signal_t blech_in_list() { exit(4); } +unsigned long dummy_long(p) unsigned long p; { return p; } +unsigned int dummy_int(p) unsigned int p; { return p; } +unsigned short dummy_short(p) unsigned short p; { return p; } +int main() +{ + double f = -123.; + unsigned long along; + unsigned int aint; + unsigned short ashort; + int result = 0; + + signal(SIGFPE, blech); + along = (unsigned long)f; + aint = (unsigned int)f; + ashort = (unsigned short)f; + if (along != (unsigned long)-123) + result |= 1; + if (aint != (unsigned int)-123) + result |= 1; + if (ashort != (unsigned short)-123) + result |= 1; + f = (double)0x40000000; + f = f + f; + along = 0; + along = (unsigned long)f; + if (along != 0x80000000) + result |= 2; + f -= 1.; + along = 0; + along = (unsigned long)f; + if (along != 0x7fffffff) + result |= 1; + f += 2.; + along = 0; + along = (unsigned long)f; + if (along != 0x80000001) + result |= 2; + if (result) + exit(result); +?X: +?X: The following is a test for Interactive Unix Version 4.1, which +?X: has an 'improved' compiler which can correctly cast negative +?X: floats in expression lists, but apparently not in argument lists. +?X: Contributed by Winfried Koenig +?X: + signal(SIGFPE, blech_in_list); + f = 123.; + along = dummy_long((unsigned long)f); + aint = dummy_int((unsigned int)f); + ashort = dummy_short((unsigned short)f); + if (along != (unsigned long)123) + result |= 4; + if (aint != (unsigned int)123) + result |= 4; + if (ashort != (unsigned short)123) + result |= 4; + exit(result); + +} +EOCP +if $cc $ccflags -o try try.c >/dev/null 2>&1; then + ./try + castflags=$? +else + echo "(I can't seem to compile the test program--assuming it can't)" + castflags=7 +fi +case "$castflags" in +0) val="$define" + echo "Yup, it can." + ;; +*) val="$undef" + echo "Nope, it can't." + ;; +esac +set d_castneg +eval $setvar +$rm -f try.* + diff --git a/mcon/U/d_cbrt.U b/mcon/U/d_cbrt.U new file mode 100644 index 0000000..11f8baa --- /dev/null +++ b/mcon/U/d_cbrt.U @@ -0,0 +1,32 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_cbrt.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:48 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_cbrt: Inlibc +?MAKE: -pick add $@ %< +?S:d_cbrt: +?S: This variable conditionally defines the CBRT symbol, which +?S: indicates to the C program that the cbrt() (cube root) function +?S: is available. +?S:. +?C:HAS_CBRT (CBRT): +?C: This symbol, if defined, indicates that the cbrt() (cube root) +?C: function is available. +?C:. +?H:#$d_cbrt HAS_CBRT /**/ +?H:. +?LINT:set d_cbrt +: see if cbrt exists +set cbrt d_cbrt +eval $inlibc + diff --git a/mcon/U/d_charsprf.U b/mcon/U/d_charsprf.U new file mode 100644 index 0000000..c7d5522 --- /dev/null +++ b/mcon/U/d_charsprf.U @@ -0,0 +1,52 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_charsprf.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:49 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_charsprf: cat rm +cc Setvar +?MAKE: -pick add $@ %< +?S:d_charsprf: +?S: This variable conditionally defines CHARSPRINTF if this system +?S: declares "char *sprintf()" in stdio.h. The trend seems to be to +?S: declare it as "int sprintf()". +?S:. +?C:CHARSPRINTF: +?C: This symbol is defined if this system declares "char *sprintf()" in +?C: stdio.h. The trend seems to be to declare it as "int sprintf()". It +?C: is up to the package author to declare sprintf correctly based on the +?C: symbol. +?C:. +?H:#$d_charsprf CHARSPRINTF /**/ +?H:. +?F:!ucbsprf.c !ucbsprf +?LINT:set d_charsprf +: see if sprintf is declared as int or pointer to char +echo " " +$cat >ucbsprf.c <<'EOF' +int main() +{ + int sprintf(); + char buf[10]; + exit((unsigned long)sprintf(buf,"%s","foo") > 10L); +} +EOF +if $cc -o ucbsprf ucbsprf.c >/dev/null 2>&1 && ./ucbsprf; then + echo "Your sprintf() returns (int)." >&4 + val="$undef" +else + echo "Your sprintf() returns (char*)." >&4 + val="$define" +fi +set d_charsprf +eval $setvar +$rm -f ucbsprf* + diff --git a/mcon/U/d_chown.U b/mcon/U/d_chown.U new file mode 100644 index 0000000..c0fff39 --- /dev/null +++ b/mcon/U/d_chown.U @@ -0,0 +1,33 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_chown.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:07:14 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_chown: Inlibc +?MAKE: -pick add $@ %< +?S:d_chown: +?S: This variable conditionally defines the HAS_CHOWN symbol, which +?S: indicates to the C program that the chown() routine is available. +?S:. +?C:HAS_CHOWN : +?C: This symbol, if defined, indicates that the chown routine is +?C: available. +?C:. +?H:#$d_chown HAS_CHOWN /**/ +?H:. +?LINT:set d_chown +: see if chown exists +set chown d_chown +eval $inlibc + diff --git a/mcon/U/d_chroot.U b/mcon/U/d_chroot.U new file mode 100644 index 0000000..c31ef3c --- /dev/null +++ b/mcon/U/d_chroot.U @@ -0,0 +1,33 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_chroot.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:07:17 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_chroot: Inlibc +?MAKE: -pick add $@ %< +?S:d_chroot: +?S: This variable conditionally defines the HAS_CHROOT symbol, which +?S: indicates to the C program that the chroot() routine is available. +?S:. +?C:HAS_CHROOT : +?C: This symbol, if defined, indicates that the chroot routine is +?C: available. +?C:. +?H:#$d_chroot HAS_CHROOT /**/ +?H:. +?LINT:set d_chroot +: see if chroot exists +set chroot d_chroot +eval $inlibc + diff --git a/mcon/U/d_chsize.U b/mcon/U/d_chsize.U new file mode 100644 index 0000000..236effb --- /dev/null +++ b/mcon/U/d_chsize.U @@ -0,0 +1,32 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_chsize.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:50 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_chsize: Inlibc +?MAKE: -pick add $@ %< +?S:d_chsize: +?S: This variable conditionally defines the CHSIZE symbol, which +?S: indicates to the C program that the chsize() routine is available +?S: to truncate files. You might need a -lx to get this routine. +?S:. +?C:HAS_CHSIZE (CHSIZE): +?C: This symbol, if defined, indicates that the chsize routine is available +?C: to truncate files. You might need a -lx to get this routine. +?C:. +?H:#$d_chsize HAS_CHSIZE /**/ +?H:. +?LINT:set d_chsize +: see if chsize exists +set chsize d_chsize +eval $inlibc + diff --git a/mcon/U/d_ckeypad.U b/mcon/U/d_ckeypad.U new file mode 100644 index 0000000..0430877 --- /dev/null +++ b/mcon/U/d_ckeypad.U @@ -0,0 +1,54 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_ckeypad.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:50 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_ckeypad: cat cc termlib Setvar +?MAKE: -pick add $@ %< +?S:d_ckeypad: +?S: This variable controls the definition of HAS_CURSES_KEYPAD, +?S: which tells the application that the keypad() curses function +?S: is available. +?S:. +?C:HAS_CURSES_KEYPAD: +?C: This symbol indicates the availability of the keypad() function +?C: of the curses library. +?C:. +?H:#$d_ckeypad HAS_CURSES_KEYPAD /**/ +?H:. +?LINT:set d_ckeypad +: check for the "keypad()" function in the curses library +echo " " +case "$termlib" in +'') + echo "You don't have a curses library, so I won't waste time looking" >&4 + echo "to see if has the keypad() function." >&4 +*) +echo "Checking the curses library ($termlib) for the keypad() function..." >&4 + $cat >c_keypad.c <<'EOCP' +#include +int main() { + keypad(stdscr, TRUE); + exit(0); +} +EOCP + if $cc c_keypad.c >c_keypad.out 2>&1 ; then + val=$define + echo "It appears to have the keypad() function." + else + val=$undef + echo "Your curses library doesn't appear to have the keypad() function." + fi +esac +set d_ckeypad +eval $setvar + diff --git a/mcon/U/d_closedir.U b/mcon/U/d_closedir.U new file mode 100644 index 0000000..071f242 --- /dev/null +++ b/mcon/U/d_closedir.U @@ -0,0 +1,107 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_closedir.U,v $ +?RCS: Revision 3.0.1.3 1997/02/28 15:31:26 ram +?RCS: patch61: added ?F: metalint hint +?RCS: +?RCS: Revision 3.0.1.2 1994/10/29 16:11:18 ram +?RCS: patch36: added 'ldflags' to the test compile line (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/08/29 16:07:21 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_closedir d_void_closedir: Inlibc i_dirent i_sysdir i_sysndir \ + cc ccflags ldflags libs Setvar rm +?MAKE: -pick add $@ %< +?S:d_closedir: +?S: This variable conditionally defines HAS_CLOSEDIR if closedir() is +?S: available. +?S:. +?C:HAS_CLOSEDIR: +?C: This symbol, if defined, indicates that the closedir() routine is +?C: available. +?C:. +?H:#$d_closedir HAS_CLOSEDIR /**/ +?H:. +?S:d_void_closedir: +?S: This variable conditionally defines VOID_CLOSEDIR if closedir() +?S: does not return a value. +?S:. +?C:VOID_CLOSEDIR: +?C: This symbol, if defined, indicates that the closedir() routine +?C: does not return a value. +?C:. +?H:#$d_void_closedir VOID_CLOSEDIR /**/ +?H:. +?F:!closedir +?LINT:set d_closedir d_void_closedir +: see if closedir exists +set closedir d_closedir +eval $inlibc + +@if VOID_CLOSEDIR || d_void_closedir +?X: The following contortions are designed so we can call closedir() +?X: and check whether it returns a value. The contortions are designed +?X: to portably pick up the correct directory header, for those +?X: systems that support various mutually incompatible directory functions. +?X: This is from perl5's perl.h +case "$d_closedir" in +"$define") + echo " " + echo "Checking whether closedir() returns a status..." >&4 + cat > closedir.c < +#if defined(NeXT) && defined(I_SYS_DIR) /* NeXT needs dirent + sys/dir.h */ +#include +#endif +#else +#ifdef I_SYS_NDIR +#include +#else +#ifdef I_SYS_DIR +#ifdef hp9000s500 +#include /* may be wrong in the future */ +#else +#include +#endif +#endif +#endif +#endif +int main() { return closedir(opendir(".")); } +EOM + if $cc $ccflags $ldflags -o closedir closedir.c $libs > /dev/null 2>&1; then + if ./closedir > /dev/null 2>&1 ; then + echo "Yes, it does." + val="$undef" + else + echo "No, it doesn't." + val="$define" + fi + else + echo "(I can't seem to compile the test program--assuming it doesn't)" + val="$define" + fi + ;; +*) + val="$undef"; + ;; +esac +set d_void_closedir +eval $setvar +$rm -f closedir* +@end diff --git a/mcon/U/d_const.U b/mcon/U/d_const.U new file mode 100644 index 0000000..4801d09 --- /dev/null +++ b/mcon/U/d_const.U @@ -0,0 +1,66 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_const.U,v $ +?RCS: Revision 3.0.1.1 1993/11/10 17:33:41 ram +?RCS: patch14: stronger const check with added typedef for MIPS cc +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:51 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_const: cat rm cc ccflags Setvar +?MAKE: -pick add $@ %< +?S:d_const: +?S: This variable conditionally defines the HASCONST symbol, which +?S: indicates to the C program that this C compiler knows about the +?S: const type. +?S:. +?C:HASCONST ~ %<: +?C: This symbol, if defined, indicates that this C compiler knows about +?C: the const type. There is no need to actually test for that symbol +?C: within your programs. The mere use of the "const" keyword will +?C: trigger the necessary tests. +?C:. +?H:?%<:#$d_const HASCONST /**/ +?H:?%<:#ifndef HASCONST +?H:?%<:#define const +?H:?%<:#endif +?H:. +?W:%<:const +?F:const.c const.o +?LINT:set d_const +?LINT:known const +: check for const keyword +echo " " +echo 'Checking to see if your C compiler knows about "const"...' >&4 +$cat >const.c <<'EOCP' +?X: mmcg@bruce.cs.monash.edu.au reports that: +?X: The MIPS cc compiler (V2.10) on a dec 5000 running Ultrix 4.2A +?X: pretends to understand `const' but doesn't - it'll also fail to +?X: handle typedefs properly if they're declared const. To guard +?X: against this, boost up the test by using an explicit typedef... +typedef struct spug { int drokk; } spug; +int main() +{ + const char *foo; + const spug y; +} +EOCP +if $cc -c $ccflags const.c >/dev/null 2>&1 ; then + val="$define" + echo "Yup, it does." +else + val="$undef" + echo "Nope, it doesn't." +fi +set d_const +eval $setvar +$rm -f const.c const.o + diff --git a/mcon/U/d_crypt.U b/mcon/U/d_crypt.U new file mode 100644 index 0000000..84906e6 --- /dev/null +++ b/mcon/U/d_crypt.U @@ -0,0 +1,76 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_crypt.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 15:31:47 ram +?RCS: patch61: replaced .a with $_a all over the place +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:52 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_crypt cryptlib: Loc test xlibpth libpth Csym Setvar _a Inlibc +?MAKE: -pick add $@ %< +?S:d_crypt: +?S: This variable conditionally defines the CRYPT symbol, which +?S: indicates to the C program that the crypt() routine is available +?S: to encrypt passwords and the like. +?S:. +?S:cryptlib: +?S: This variable holds -lcrypt or the path to a libcrypt.a archive if +?S: the crypt() function is not defined in the standard C library. It is +?S: up to the Makefile to use this. +?S:. +?C:HAS_CRYPT (CRYPT): +?C: This symbol, if defined, indicates that the crypt routine is available +?C: to encrypt passwords and the like. +?C:. +?H:#$d_crypt HAS_CRYPT /**/ +?H:. +?LINT:set d_crypt +?T:val +: see if crypt exists +echo " " +set crypt d_crypt +eval $inlibc +case "$d_crypt" in +$define) cryptlib='' ;; +*) if set crypt val -f d_crypt; eval $csym; $val; then + echo 'crypt() found.' >&4 + val="$define" + cryptlib='' + else + cryptlib=`./loc Slibcrypt$_a "" $xlibpth` + if $test -z "$cryptlib"; then + cryptlib=`./loc Mlibcrypt$_a "" $xlibpth` + else + cryptlib=-lcrypt + fi + if $test -z "$cryptlib"; then + cryptlib=`./loc Llibcrypt$_a "" $xlibpth` + else + cryptlib=-lcrypt + fi + if $test -z "$cryptlib"; then + cryptlib=`./loc libcrypt$_a "" $libpth` + else + cryptlib=-lcrypt + fi + if $test -z "$cryptlib"; then + echo 'crypt() NOT found.' >&4 + val="$undef" + else + val="$define" + fi + fi + set d_crypt + eval $setvar + ;; +esac + diff --git a/mcon/U/d_csh.U b/mcon/U/d_csh.U new file mode 100644 index 0000000..c0a792e --- /dev/null +++ b/mcon/U/d_csh.U @@ -0,0 +1,62 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_csh.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 15:32:18 ram +?RCS: patch61: added full_csh to preserve the full path even when portable +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:53 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_csh full_csh: csh Setvar +?MAKE: -pick add $@ %< +?S:d_csh: +?S: This variable conditionally defines the CSH symbol, which +?S: indicates to the C program that the C-shell exists. +?S:. +?S:full_csh: +?S: This variable contains the full pathname to 'csh', whether or +?S: not the user has specified 'portability'. This is only used +?S: in the compiled C program, and we assume that all systems which +?S: can share this executable will have the same full pathname to +?S: 'csh.' +?S:. +?C:HAS_CSH: +?C: This symbol, if defined, indicates that the C-shell exists. +?C:. +?C:CSH: +?C: This symbol, if defined, contains the full pathname of csh. +?C:. +?X: Previously, I just did $d_csh CSH "$full_csh", but that caused +?X: problems on VMS where the config.sh extraction program changes +?X: $undef to a real cpp undef, and they then had #undef CSH "" +?X: which the compiler didn't like. It's easy to work around this, +?X: so I did. --AD 3/1998. +?X: And we don't want to define CSH if !HAS_CSH, but we don't want +?X: those lines in config.h if they don't need CSH, so protect with ?CSH +?X: and not ?%<. --RAM, 15/02/2004 +?H:?%<:#$d_csh HAS_CSH /**/ +?H:?CSH:#ifdef HAS_CSH +?H:?CSH:#define CSH "$full_csh" /**/ +?H:?CSH:#endif +?H:. +?LINT:set d_csh +: get csh whereabouts +case "$csh" in +'csh') val="$undef" ;; +*) val="$define" ;; +esac +set d_csh +eval $setvar +: Respect a hint or command line value for full_csh. +case "$full_csh" in +'') full_csh=$csh ;; +esac + diff --git a/mcon/U/d_ctermid.U b/mcon/U/d_ctermid.U new file mode 100644 index 0000000..5f1f7ee --- /dev/null +++ b/mcon/U/d_ctermid.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_ctermid.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:54 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_ctermid: Inlibc +?MAKE: -pick add $@ %< +?S:d_ctermid: +?S: This variable conditionally defines CTERMID if ctermid() is +?S: available to generate filename for terminal. +?S:. +?C:HAS_CTERMID (CTERMID): +?C: This symbol, if defined, indicates that the ctermid routine is +?C: available to generate filename for terminal. +?C:. +?H:#$d_ctermid HAS_CTERMID /**/ +?H:. +?LINT:set d_ctermid +: see if ctermid exists +set ctermid d_ctermid +eval $inlibc + diff --git a/mcon/U/d_cuserid.U b/mcon/U/d_cuserid.U new file mode 100644 index 0000000..a6d46c5 --- /dev/null +++ b/mcon/U/d_cuserid.U @@ -0,0 +1,34 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_cuserid.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:07:25 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_cuserid: Inlibc +?MAKE: -pick add $@ %< +?S:d_cuserid: +?S: This variable conditionally defines the HAS_CUSERID symbol, which +?S: indicates to the C program that the cuserid() routine is available +?S: to get character login names. +?S:. +?C:HAS_CUSERID : +?C: This symbol, if defined, indicates that the cuserid routine is +?C: available to get character login names. +?C:. +?H:#$d_cuserid HAS_CUSERID /**/ +?H:. +?LINT:set d_cuserid +: see if cuserid exists +set cuserid d_cuserid +eval $inlibc + diff --git a/mcon/U/d_dbl_dig.U b/mcon/U/d_dbl_dig.U new file mode 100644 index 0000000..aa53e73 --- /dev/null +++ b/mcon/U/d_dbl_dig.U @@ -0,0 +1,61 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_dbl_dig.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:07:28 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_dbl_dig: Myread contains cat rm Setvar i_limits i_float \ + cppstdin cppflags cppminus +?MAKE: -pick add $@ %< +?S:d_dbl_dig: +?S: This variable conditionally defines d_dbl_dig if this system's +?S: header files provide DBL_DIG, which is the number of significant +?S: digits in a double precision number. +?S:. +?C:HAS_DBL_DIG: +?C: This symbol, if defined, indicates that this system's +?C: or defines the symbol DBL_DIG, which is the number +?C: of significant digits in a double precision number. If this +?C: symbol is not defined, a guess of 15 is usually pretty good. +?C:. +?H:#$d_dbl_dig HAS_DBL_DIG /* */ +?H:. +?F:!dbl_dig.c +?LINT:set d_dbl_dig +: See if number of significant digits in a double precision number is known +echo " " +$cat >dbl_dig.c < +#endif +#ifdef I_FLOAT +#include +#endif +#ifdef DBL_DIG +printf("Contains DBL_DIG"); +#endif +EOM +$cppstdin $cppflags $cppminus < dbl_dig.c >dbl_dig.E 2>/dev/null +if $contains 'DBL_DIG' dbl_dig.E >/dev/null 2>&1; then + echo "DBL_DIG found." >&4 + val="$define" +else + echo "DBL_DIG NOT found." >&4 + val="$undef" +fi +$rm -f dbl_dig.? +set d_dbl_dig +eval $setvar + diff --git a/mcon/U/d_debugging.U b/mcon/U/d_debugging.U new file mode 100644 index 0000000..fabe096 --- /dev/null +++ b/mcon/U/d_debugging.U @@ -0,0 +1,42 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_debugging: Myread Setvar spackage cat +?MAKE: -pick add $@ %< +?S:d_debugging: +?S: This variable conditionally defines the DEBUGGING symbol. +?S:. +?C:DEBUGGING: +?C: This symbol, when defined, activates extra debugging. +?C:. +?H:#$d_debugging DEBUGGING +?H:. +?LINT:set d_debugging +: see whether debugging should be turned on +$cat < +?RCS: +?RCS: $Log: d_difftime.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:07:31 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_difftime: Inlibc +?MAKE: -pick add $@ %< +?S:d_difftime: +?S: This variable conditionally defines the HAS_DIFFTIME symbol, which +?S: indicates to the C program that the difftime() routine is available. +?S:. +?C:HAS_DIFFTIME : +?C: This symbol, if defined, indicates that the difftime routine is +?C: available. +?C:. +?H:#$d_difftime HAS_DIFFTIME /**/ +?H:. +?LINT:set d_difftime +: see if difftime exists +set difftime d_difftime +eval $inlibc + diff --git a/mcon/U/d_dlerror.U b/mcon/U/d_dlerror.U new file mode 100644 index 0000000..a3bb995 --- /dev/null +++ b/mcon/U/d_dlerror.U @@ -0,0 +1,46 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_dlerror.U,v $ +?RCS: Revision 3.0.1.2 1995/07/25 13:52:49 ram +?RCS: patch56: force compile-link test since symbol might lie in crt0.o (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:11:23 ram +?RCS: patch36: created by ADO +?RCS: +?MAKE:d_dlerror: Inlibc runnm +?MAKE: -pick add $@ %< +?S:d_dlerror: +?S: This variable conditionally defines the HAS_DLERROR symbol, which +?S: indicates to the C program that the dlerror() routine is available. +?S:. +?C:HAS_DLERROR : +?C: This symbol, if defined, indicates that the dlerror routine is +?C: available to return a string describing the last error that +?C: occurred from a call to dlopen(), dlclose() or dlsym(). +?C:. +?H:#$d_dlerror HAS_DLERROR /**/ +?H:. +?T: xxx_runnm +?LINT:set d_dlerror +?X: We don't permanently change runnm, but we do temporarily. +?LINT: change runnm +: see if dlerror exists +?X: On NetBSD and FreeBSD, dlerror might be available, but it is in +?X: /usr/lib/crt0.o, not in any of the libraries. Therefore, do not +?X: use the nm extraction, but use a real compile and link test instead. +xxx_runnm="$runnm" +runnm=false +set dlerror d_dlerror +eval $inlibc +runnm="$xxx_runnm" + diff --git a/mcon/U/d_dlopen.U b/mcon/U/d_dlopen.U new file mode 100644 index 0000000..ad62c53 --- /dev/null +++ b/mcon/U/d_dlopen.U @@ -0,0 +1,45 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_dlopen.U,v $ +?RCS: Revision 3.0.1.2 1995/07/25 13:52:56 ram +?RCS: patch56: force compile-link test since symbol might lie in crt0.o (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/08/29 16:07:34 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_dlopen: Inlibc runnm +?MAKE: -pick add $@ %< +?S:d_dlopen: +?S: This variable conditionally defines the HAS_DLOPEN symbol, which +?S: indicates to the C program that the dlopen() routine is available. +?S:. +?C:HAS_DLOPEN : +?C: This symbol, if defined, indicates that the dlopen routine is +?C: available. +?C:. +?H:#$d_dlopen HAS_DLOPEN /**/ +?H:. +?T: xxx_runnm +?LINT:set d_dlopen +?X: We don't permanently change runnm, but we do temporarily. +?LINT: change runnm +: see if dlopen exists +?X: On NetBSD and FreeBSD, dlopen is available, but it is in +?X: /usr/lib/crt0.o, not in any of the libraries. Therefore, do not +?X: use the nm extraction, but use a real compile and link test instead. +xxx_runnm="$runnm" +runnm=false +set dlopen d_dlopen +eval $inlibc +runnm="$xxx_runnm" + diff --git a/mcon/U/d_dosuid.U b/mcon/U/d_dosuid.U new file mode 100644 index 0000000..a584e1a --- /dev/null +++ b/mcon/U/d_dosuid.U @@ -0,0 +1,169 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Tye McQueen added safe setuid script checks. +?RCS: +?RCS: $Log: d_dosuid.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 15:33:03 ram +?RCS: patch61: moved unit to TOP via a ?Y: layout directive +?RCS: patch61: tell them /dev/fd is not about floppy disks +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:12:08 ram +?RCS: patch36: added checks for secure setuid scripts (Tye McQueen) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:55 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_dosuid d_suidsafe: cat contains ls rm test Myread Setvar \ + Oldconfig Guess package hint +?MAKE: -pick add $@ %< +?S:d_suidsafe: +?S: This variable conditionally defines SETUID_SCRIPTS_ARE_SECURE_NOW +?S: if setuid scripts can be secure. This test looks in /dev/fd/. +?S:. +?S:d_dosuid: +?S: This variable conditionally defines the symbol DOSUID, which +?S: tells the C program that it should insert setuid emulation code +?S: on hosts which have setuid #! scripts disabled. +?S:. +?C:SETUID_SCRIPTS_ARE_SECURE_NOW: +?C: This symbol, if defined, indicates that the bug that prevents +?C: setuid scripts from being secure is not present in this kernel. +?C:. +?C:DOSUID: +?C: This symbol, if defined, indicates that the C program should +?C: check the script that it is executing for setuid/setgid bits, and +?C: attempt to emulate setuid/setgid on systems that have disabled +?C: setuid #! scripts because the kernel can't do it securely. +?C: It is up to the package designer to make sure that this emulation +?C: is done securely. Among other things, it should do an fstat on +?C: the script it just opened to make sure it really is a setuid/setgid +?C: script, it should make sure the arguments passed correspond exactly +?C: to the argument on the #! line, and it should not trust any +?C: subprocesses to which it must pass the filename rather than the +?C: file descriptor of the script to be executed. +?C:. +?H:#$d_suidsafe SETUID_SCRIPTS_ARE_SECURE_NOW /**/ +?H:#$d_dosuid DOSUID /**/ +?H:. +?Y:TOP +?F:!reflect +?LINT: set d_suidsafe +?LINT: set d_dosuid +: see if setuid scripts can be secure +$cat <reflect + chmod +x,u+s reflect + ./reflect >flect 2>&1 + if $contains "/dev/fd" flect >/dev/null; then + echo "Congratulations, your kernel has secure setuid scripts!" >&4 + val="$define" + else + $cat <&4 + dflt=n;; + "$undef") + echo "Well, the $hint value is *not* secure." >&4 + dflt=n;; + *) echo "Well, the $hint value *is* secure." >&4 + dflt=y;; + esac + ;; + *) + $rm -f reflect flect + echo "#!$ls" >reflect + chmod +x,u+s reflect + echo >flect + chmod a+w flect + echo '"su" will (probably) prompt you for '"$ans's password." + su $ans -c './reflect >flect' + if $contains "/dev/fd" flect >/dev/null; then + echo "Okay, it looks like setuid scripts are secure." >&4 + dflt=y + else + echo "I don't think setuid scripts are secure." >&4 + dflt=n + fi + ;; + esac + rp='Does your kernel have *secure* setuid scripts?' + . ./myread + case "$ans" in + [yY]*) val="$define";; + *) val="$undef";; + esac + fi +else + echo "I don't think setuid scripts are secure (no /dev/fd directory)." >&4 + echo "(That's for file descriptors, not floppy disks.)" + val="$undef" +fi +set d_suidsafe +eval $setvar + +$rm -f reflect flect + +: now see if they want to do setuid emulation +echo " " +val="$undef" +case "$d_suidsafe" in +"$define") + val="$undef" + echo "No need to emulate SUID scripts since they are secure here." >& 4 + ;; +*) + $cat < +?RCS: +?RCS: $Log: d_drem.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:12:14 ram +?RCS: patch36: created by ADO +?RCS: +?MAKE:d_drem: Inlibc +?MAKE: -pick add $@ %< +?S:d_drem: +?S: This variable conditionally defines the HAS_DREM symbol, which +?S: indicates to the C program that the drem() routine is available. +?S:. +?C:HAS_DREM : +?C: This symbol, if defined, indicates that the drem routine is +?C: available. This routine is roughly the same as fmod, i.e. it +?C: computes the remainder r=x-n*y, where n=rint(x/y), whereas fmod +?C: uses n=trunc(x/y). +?C:. +?H:#$d_drem HAS_DREM /**/ +?H:. +?LINT:set d_drem +: see if drem exists +set drem d_drem +eval $inlibc + diff --git a/mcon/U/d_dup2.U b/mcon/U/d_dup2.U new file mode 100644 index 0000000..070bfaa --- /dev/null +++ b/mcon/U/d_dup2.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_dup2.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:56 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_dup2: Inlibc +?MAKE: -pick add $@ %< +?S:d_dup2: +?S: This variable conditionally defines HAS_DUP2 if dup2() is +?S: available to duplicate file descriptors. +?S:. +?C:HAS_DUP2 (DUP2): +?C: This symbol, if defined, indicates that the dup2 routine is +?C: available to duplicate file descriptors. +?C:. +?H:#$d_dup2 HAS_DUP2 /**/ +?H:. +?LINT:set d_dup2 +: see if dup2 exists +set dup2 d_dup2 +eval $inlibc + diff --git a/mcon/U/d_eofpipe.U b/mcon/U/d_eofpipe.U new file mode 100644 index 0000000..86b30a5 --- /dev/null +++ b/mcon/U/d_eofpipe.U @@ -0,0 +1,93 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_eofpipe.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:12:40 ram +?RCS: patch36: call ./bsd explicitely instead of relying on PATH +?RCS: +?RCS: Revision 3.0 1993/08/18 12:05:57 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_eofpipe: cat +cc +ccflags +libs rm Oldconfig Guess echo n c +?MAKE: -pick add $@ %< +?S:d_eofpipe: +?S: This variable conditionally defines the EOFPIPE symbol, which +?S: indicates to the C program that select will correctly detect the EOF +?S: condition when pipe is closed from the other end. +?S:. +?C:EOFPIPE: +?C: This symbol, if defined, indicates that EOF condition will be detected +?C: by the reader of the pipe when it is closed by the writing process. +?C: That is, a select() call on that file descriptor will not block when +?C: only an EOF remains (typical behaviour for BSD systems). +?C:. +?H:#$d_eofpipe EOFPIPE /**/ +?H:. +?F:!mpipe +: see if pipe correctly gives the EOF condition +echo " " +case "$d_eofpipe" in +'') + echo "Let's see if your pipes return EOF to select() upon closing..." >&4 + $cat >pipe.c <<'EOP' +int main() +{ + int pd[2]; + int mask; + + pipe(pd); + if (0 == fork()) { + close(pd[0]); + close(pd[1]); + exit(0); + } + + close(pd[1]); + mask = 1 << pd[0]; + alarm(2); + select(32, &mask, (int *) 0, (int *) 0, (char *) 0); + if (0 == read(pd[0], &mask, 1)) + exit(0); + + exit(1); +} +EOP + if $cc $ccflags -o pipe pipe.c $libs >/dev/null 2>&1; then +?X: Use a script to avoid the possible 'alarm call' message + echo "./pipe || exit 1" > mpipe + chmod +x mpipe + ./mpipe >/dev/null 2>&1 + case $? in + 0) d_eofpipe="$define";; + *) d_eofpipe="$undef";; + esac + else + echo "(The test program did not compile correctly -- Guessing.)" + if ./bsd; then + d_eofpipe="$define" + else + d_eofpipe="$undef" + fi + fi + case "$d_eofpipe" in + "$define") echo "Yes, they do.";; + *) echo "No, they don't! (sigh)";; + esac + ;; +*) + $echo $n "Your pipes $c" + case "$d_eofpipe" in + "$define") echo "allow select() to see EOF upon closing.";; + *) echo "won't let select() see EOF on closing.";; + esac + ;; +esac +$rm -f *pipe* core + diff --git a/mcon/U/d_euc2jis.U b/mcon/U/d_euc2jis.U new file mode 100644 index 0000000..a80406d --- /dev/null +++ b/mcon/U/d_euc2jis.U @@ -0,0 +1,32 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_euc2jis.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:58 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_euc2jis: Inlibc +?MAKE: -pick add $@ %< +?S:d_euc2jis: +?S: This variable conditionally defines the HAS_EUC2JIS symbol, which +?S: indicates to the C program that the euc2jis() routine is available +?S: to convert EUC to JIS. +?S:. +?C:HAS_EUC2JIS: +?C: This symbol, if defined, indicates that the euc2jis routine is +?C: available to convert EUC to JIS. +?C:. +?H:#$d_euc2jis HAS_EUC2JIS /**/ +?H:. +?LINT:set d_euc2jis +: see if euc2jis exists +set euc2jis d_euc2jis +eval $inlibc + diff --git a/mcon/U/d_fchmod.U b/mcon/U/d_fchmod.U new file mode 100644 index 0000000..1939d78 --- /dev/null +++ b/mcon/U/d_fchmod.U @@ -0,0 +1,32 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_fchmod.U,v $ +?RCS: Revision 3.0 1993/08/18 12:05:59 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_fchmod: Inlibc +?MAKE: -pick add $@ %< +?S:d_fchmod: +?S: This variable conditionally defines the HAS_FCHMOD symbol, which +?S: indicates to the C program that the fchmod() routine is available +?S: to change mode of opened files. +?S:. +?C:HAS_FCHMOD (FCHMOD): +?C: This symbol, if defined, indicates that the fchmod routine is available +?C: to change mode of opened files. If unavailable, use chmod(). +?C:. +?H:#$d_fchmod HAS_FCHMOD /**/ +?H:. +?LINT:set d_fchmod +: see if fchmod exists +set fchmod d_fchmod +eval $inlibc + diff --git a/mcon/U/d_fchown.U b/mcon/U/d_fchown.U new file mode 100644 index 0000000..0efbbe2 --- /dev/null +++ b/mcon/U/d_fchown.U @@ -0,0 +1,32 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_fchown.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:01 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_fchown: Inlibc +?MAKE: -pick add $@ %< +?S:d_fchown: +?S: This variable conditionally defines the HAS_FCHOWN symbol, which +?S: indicates to the C program that the fchown() routine is available +?S: to change ownership of opened files. +?S:. +?C:HAS_FCHOWN (FCHOWN): +?C: This symbol, if defined, indicates that the fchown routine is available +?C: to change ownership of opened files. If unavailable, use chown(). +?C:. +?H:#$d_fchown HAS_FCHOWN /**/ +?H:. +?LINT:set d_fchown +: see if fchown exists +set fchown d_fchown +eval $inlibc + diff --git a/mcon/U/d_fcntl.U b/mcon/U/d_fcntl.U new file mode 100644 index 0000000..24ea9b2 --- /dev/null +++ b/mcon/U/d_fcntl.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_fcntl.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:01 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_fcntl: Inlibc +?MAKE: -pick add $@ %< +?S:d_fcntl: +?S: This variable conditionally defines the HAS_FCNTL symbol, and indicates +?S: whether the fcntl() function exists +?S:. +?C:HAS_FCNTL: +?C: This symbol, if defined, indicates to the C program that +?C: the fcntl() function exists. +?C:. +?H:#$d_fcntl HAS_FCNTL /**/ +?H:. +?LINT:set d_fcntl +: see if this is an fcntl system +set fcntl d_fcntl +eval $inlibc + diff --git a/mcon/U/d_fd_set.U b/mcon/U/d_fd_set.U new file mode 100644 index 0000000..8e13de2 --- /dev/null +++ b/mcon/U/d_fd_set.U @@ -0,0 +1,138 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_fd_set.U,v $ +?RCS: Revision 3.0.1.3 1997/02/28 15:33:16 ram +?RCS: patch61: added ?F: metalint hint +?RCS: +?RCS: Revision 3.0.1.2 1994/06/20 06:57:23 ram +?RCS: patch30: extended scope for fd_set checks (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/01/24 14:06:27 ram +?RCS: patch16: comments for HAS_FD_* symbols were not consistent +?RCS: +?RCS: Revision 3.0 1993/08/18 12:06:02 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_fd_set d_fd_macros d_fds_bits: cat +cc +ccflags rm Oldconfig \ + d_socket i_systime i_sysselct +?MAKE: -pick add $@ %< +?S:d_fd_set: +?S: This variable contains the eventual value of the HAS_FD_SET symbol, +?S: which indicates if your C compiler knows about the fd_set typedef. +?S:. +?S:d_fd_macros: +?S: This variable contains the eventual value of the HAS_FD_MACROS symbol, +?S: which indicates if your C compiler knows about the macros which +?S: manipulate an fd_set. +?S:. +?S:d_fds_bits: +?S: This variable contains the eventual value of the HAS_FDS_BITS symbol, +?S: which indicates if your fd_set typedef contains the fds_bits member. +?S: If you have an fd_set typedef, but the dweebs who installed it did +?S: a half-fast job and neglected to provide the macros to manipulate +?S: an fd_set, HAS_FDS_BITS will let us know how to fix the gaffe. +?S:. +?C:HAS_FD_SET: +?C: This symbol, when defined, indicates presence of the fd_set typedef +?C: in +?C:. +?C:HAS_FD_MACROS: +?C: This symbol, when defined, indicates presence of the macros used to +?C: manipulate an fd_set. +?C:. +?C:HAS_FDS_BITS: +?C: This symbol, when defined, indicates presence of the fds_bits member in +?C: fd_set. This knowledge is useful if fd_set is available but the macros +?C: aren't. +?C:. +?H:#$d_fd_set HAS_FD_SET /**/ +?H:#$d_fd_macros HAS_FD_MACROS /**/ +?H:#$d_fds_bits HAS_FDS_BITS /**/ +?H:. +?F:!fd_set +: check for fd_set items +$cat <, which is included (perhaps) +?X: by . We won't force people to include +?X: because it might introduce other +?X: incompatibilities. +$cat >fd_set.c < +#ifdef HAS_SOCKET +#include /* Might include */ +#endif +#ifdef I_SYS_TIME +#include +#endif +#ifdef I_SYS_SELECT +#include +#endif +int main() { + fd_set fds; + +#ifdef TRYBITS + if(fds.fds_bits); +#endif + +#if defined(FD_SET) && defined(FD_CLR) && defined(FD_ISSET) && defined(FD_ZERO) + exit(0); +#else + exit(1); +#endif +} +EOCP +if $cc $ccflags -DTRYBITS -o fd_set fd_set.c >fd_set.out 2>&1 ; then + d_fds_bits="$define" + d_fd_set="$define" + echo "Well, your system knows about the normal fd_set typedef..." >&4 + if ./fd_set; then + echo "and you have the normal fd_set macros (just as I'd expect)." >&4 + d_fd_macros="$define" + else + $cat >&4 <<'EOM' +but not the normal fd_set macros! Gaaack! I'll have to cover for you. +EOM + d_fd_macros="$undef" + fi +else + $cat <<'EOM' +Hmm, your compiler has some difficulty with fd_set. Checking further... +EOM + if $cc $ccflags -o fd_set fd_set.c >fd_set.out 2>&1 ; then + d_fds_bits="$undef" + d_fd_set="$define" + echo "Well, your system has some sort of fd_set available..." >&4 + if ./fd_set; then + echo "and you have the normal fd_set macros." >&4 + d_fd_macros="$define" + else + $cat <<'EOM' +but not the normal fd_set macros! Gross! More work for me... +EOM + d_fd_macros="$undef" + fi + else + echo "Well, you got zip. That's OK, I can roll my own fd_set stuff." >&4 + d_fd_set="$undef" + d_fds_bits="$undef" + d_fd_macros="$undef" + fi +fi +$rm -f fd_set* + + diff --git a/mcon/U/d_ffs.U b/mcon/U/d_ffs.U new file mode 100644 index 0000000..cda3896 --- /dev/null +++ b/mcon/U/d_ffs.U @@ -0,0 +1,33 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_ffs.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:03 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_ffs: Inlibc +?MAKE: -pick add $@ %< +?S:d_ffs: +?S: This variable conditionally defines the HAS_FFS symbol, which +?S: indicates to the C program that the ffs() routine is available +?S: to find the first bit which is set in its integer argument. +?S:. +?C:HAS_FFS: +?C: This symbol, if defined, indicates that the ffs routine is available +?C: to find the first bit set in its argument. If it's not available, +?C: roll your own. +?C:. +?H:#$d_ffs HAS_FFS /**/ +?H:. +?LINT:set d_ffs +: see if ffs exists +set ffs d_ffs +eval $inlibc + diff --git a/mcon/U/d_fgetpos.U b/mcon/U/d_fgetpos.U new file mode 100644 index 0000000..8553f96 --- /dev/null +++ b/mcon/U/d_fgetpos.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_fgetpos.U,v $ +?RCS: Revision 3.0.1.1 1994/06/20 06:57:33 ram +?RCS: patch30: created +?RCS: +?MAKE:d_fgetpos: Inlibc +?MAKE: -pick add $@ %< +?S:d_fgetpos: +?S: This variable conditionally defines HAS_FGETPOS if fgetpos() is +?S: available to get the file position indicator. +?S:. +?C:HAS_FGETPOS: +?C: This symbol, if defined, indicates that the fgetpos routine is +?C: available to get the file position indicator, similar to ftell(). +?C:. +?H:#$d_fgetpos HAS_FGETPOS /**/ +?H:. +?LINT:set d_fgetpos +: see if fgetpos exists +set fgetpos d_fgetpos +eval $inlibc + diff --git a/mcon/U/d_flexfnam.U b/mcon/U/d_flexfnam.U new file mode 100644 index 0000000..0f53a0b --- /dev/null +++ b/mcon/U/d_flexfnam.U @@ -0,0 +1,77 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_flexfnam.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:04 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_flexfnam: cat rm test Setvar +?MAKE: -pick add $@ %< +?S:d_flexfnam: +?S: This variable conditionally defines the FLEXFILENAMES symbol, which +?S: indicates that the system supports filenames longer than 14 characters. +?S:. +?C:FLEXFILENAMES: +?C: This symbol, if defined, indicates that the system supports filenames +?C: longer than 14 characters. +?C:. +?H:#$d_flexfnam FLEXFILENAMES /**/ +?H:. +?T:first second +?LINT:set d_flexfnam +: see if we can have long filenames +echo " " +?X: +?X: We have to test in both /tmp and . because of NFS (remote server may allow +?X: long filenames while the local filesystem cannot support them). If at least +?X: one of those file systems cannot support long filenames, then we assume the +?X: whole system can't. +?X: +rmlist="$rmlist /tmp/cf$$" +$test -d /tmp/cf$$ || mkdir /tmp/cf$$ +first=123456789abcdef +second=/tmp/cf$$/$first +$rm -f $first $second +if (echo hi >$first) 2>/dev/null; then + if $test -f 123456789abcde; then + echo 'You cannot have filenames longer than 14 characters. Sigh.' >&4 + val="$undef" + else + if (echo hi >$second) 2>/dev/null; then + if $test -f /tmp/cf$$/123456789abcde; then + $cat <<'EOM' +That's peculiar... You can have filenames longer than 14 characters, but only +on some of the filesystems. Maybe you are using NFS. Anyway, to avoid problems +I shall consider your system cannot support long filenames at all. +EOM + val="$undef" + else + echo 'You can have filenames longer than 14 characters.' >&4 + val="$define" + fi + else + $cat <<'EOM' +How confusing! Some of your filesystems are sane enough to allow filenames +longer than 14 characters but some others like /tmp can't even think about them. +So, for now on, I shall assume your kernel does not allow them at all. +EOM + val="$undef" + fi + fi +else + $cat <<'EOM' +You can't have filenames longer than 14 chars. You can't even think about them! +EOM + val="$undef" +fi +set d_flexfnam +eval $setvar +$rm -rf /tmp/cf$$ 123456789abcde* + diff --git a/mcon/U/d_flock.U b/mcon/U/d_flock.U new file mode 100644 index 0000000..c3252e3 --- /dev/null +++ b/mcon/U/d_flock.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_flock.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:05 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_flock: Inlibc +?MAKE: -pick add $@ %< +?S:d_flock: +?S: This variable conditionally defines HAS_FLOCK if flock() is +?S: available to do file locking. +?S:. +?C:HAS_FLOCK (FLOCK): +?C: This symbol, if defined, indicates that the flock routine is +?C: available to do file locking. +?C:. +?H:#$d_flock HAS_FLOCK /**/ +?H:. +?LINT:set d_flock +: see if flock exists +set flock d_flock +eval $inlibc + diff --git a/mcon/U/d_fmod.U b/mcon/U/d_fmod.U new file mode 100644 index 0000000..bad72e7 --- /dev/null +++ b/mcon/U/d_fmod.U @@ -0,0 +1,34 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_fmod.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:12:46 ram +?RCS: patch36: created by ADO +?RCS: +?MAKE:d_fmod: Inlibc +?MAKE: -pick add $@ %< +?S:d_fmod: +?S: This variable conditionally defines the HAS_FMOD symbol, which +?S: indicates to the C program that the fmod() routine is available. +?S: See also d_drem for the drem() routine which does roughly the same. +?S:. +?C:HAS_FMOD : +?C: This symbol, if defined, indicates that the fmod routine is +?C: available to compute the remainder r=x-n*y where n=trunc(x/y). +?C:. +?H:#$d_fmod HAS_FMOD /**/ +?H:. +?LINT:set d_fmod +: see if fmod exists +set fmod d_fmod +eval $inlibc + diff --git a/mcon/U/d_fork.U b/mcon/U/d_fork.U new file mode 100644 index 0000000..796aee3 --- /dev/null +++ b/mcon/U/d_fork.U @@ -0,0 +1,33 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_fork.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:07:38 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_fork: Inlibc +?MAKE: -pick add $@ %< +?S:d_fork: +?S: This variable conditionally defines the HAS_FORK symbol, which +?S: indicates to the C program that the fork() routine is available. +?S:. +?C:HAS_FORK : +?C: This symbol, if defined, indicates that the fork routine is +?C: available. +?C:. +?H:#$d_fork HAS_FORK /**/ +?H:. +?LINT:set d_fork +: see if fork exists +set fork d_fork +eval $inlibc + diff --git a/mcon/U/d_fsetpos.U b/mcon/U/d_fsetpos.U new file mode 100644 index 0000000..ce3d195 --- /dev/null +++ b/mcon/U/d_fsetpos.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_fsetpos.U,v $ +?RCS: Revision 3.0.1.1 1994/06/20 06:57:38 ram +?RCS: patch30: created +?RCS: +?MAKE:d_fsetpos: Inlibc +?MAKE: -pick add $@ %< +?S:d_fsetpos: +?S: This variable conditionally defines HAS_FSETPOS if fsetpos() is +?S: available to set the file position indicator. +?S:. +?C:HAS_FSETPOS: +?C: This symbol, if defined, indicates that the fsetpos routine is +?C: available to set the file position indicator, similar to fseek(). +?C:. +?H:#$d_fsetpos HAS_FSETPOS /**/ +?H:. +?LINT:set d_fsetpos +: see if fsetpos exists +set fsetpos d_fsetpos +eval $inlibc + diff --git a/mcon/U/d_ftime.U b/mcon/U/d_ftime.U new file mode 100644 index 0000000..0e41cc7 --- /dev/null +++ b/mcon/U/d_ftime.U @@ -0,0 +1,78 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_ftime.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:06 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_ftime d_gettimeod: Inlibc Setvar +?MAKE: -pick add $@ %< +?S:d_ftime: +?S: This variable conditionally defines the HAS_FTIME symbol, which indicates +?S: that the ftime() routine exists. The ftime() routine is basically +?S: a sub-second accuracy clock. +?S:. +?S:d_gettimeod: +?S: This variable conditionally defines the HAS_GETTIMEOFDAY symbol, which +?S: indicates that the gettimeofday() system call exists (to obtain a +?S: sub-second accuracy clock). You should probably include . +?S:. +?C:HAS_FTIME (FTIMER): +?C: This symbol, if defined, indicates that the ftime() routine exists. +?C: It is basically a sub-second accuracy clock, but is less accurate +?C: than gettimeofday(2) anyway. The type "Timeval" should be used to +?C: refer to "struct timeb". +?C:. +?C:HAS_GETTIMEOFDAY (GETTIMEOFDAY): +?C: This symbol, if defined, indicates that the gettimeofday() system +?C: call is available for a sub-second accuracy clock. Usually, the file +?C: needs to be included (see I_SYS_RESOURCE). +?C: The type "Timeval" should be used to refer to "struct timeval". +?C:. +?H:#$d_ftime HAS_FTIME /**/ +?H:#$d_gettimeod HAS_GETTIMEOFDAY /**/ +?H:?%<:@if HAS_FTIME +?H:?%<:#ifdef HAS_FTIME +?H:?%<:#define Timeval struct timeb /* Structure used by ftime() */ +?H:?%<:#endif +?H:?%<:@end +?H:?%<:@if HAS_GETTIMEOFDAY +?H:?%<:#ifdef HAS_GETTIMEOFDAY +?H:?%<:#define Timeval struct timeval /* Structure used by gettimeofday() */ +?H:?%<:#endif +?H:?%<:@end +?H:. +?X:FIXME +?X:?I:?d_ftime:i_systimeb +?X:?I:?d_gettimeod:i_sysresrc +?LINT:set d_gettimeod d_ftime +?LINT:known Timeval +: see if gettimeofday or ftime exists +?X: +?X: Give priority to gettimeofday(2) because timing is more accurate +?X: +set gettimeofday d_gettimeod +eval $inlibc +case "$d_gettimeod" in +"$undef") + set ftime d_ftime + eval $inlibc + ;; +*) + val="$undef"; set d_ftime; eval $setvar + ;; +esac +case "$d_gettimeod$d_ftime" in +"$undef$undef") + echo " " + echo 'No ftime() nor gettimeofday() -- timing may be less accurate.' >&4 + ;; +esac + diff --git a/mcon/U/d_ftrncate.U b/mcon/U/d_ftrncate.U new file mode 100644 index 0000000..29202b2 --- /dev/null +++ b/mcon/U/d_ftrncate.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_ftrncate.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:07 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_ftrncate: Inlibc +?MAKE: -pick add $@ %< +?S:d_ftrncate (d_ftruncate): +?S: This variable conditionally defines the HAS_FTRUNCATE symbol, which +?S: indicates to the C program that the ftruncate() subroutine exists. +?S:. +?C:HAS_FTRUNCATE: +?C: This symbol, if defined, indicates that the ftruncate() subroutine +?C: exists. +?C:. +?H:#$d_ftrncate HAS_FTRUNCATE /**/ +?H:. +?LINT:set d_ftrncate +: see if ftruncate exists +set ftruncate d_ftrncate +eval $inlibc + diff --git a/mcon/U/d_gconvert.U b/mcon/U/d_gconvert.U new file mode 100644 index 0000000..367da20 --- /dev/null +++ b/mcon/U/d_gconvert.U @@ -0,0 +1,147 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_gconvert.U,v $ +?RCS: Revision 3.0.1.3 1997/02/28 15:33:38 ram +?RCS: patch61: integrated new unit from perl5 +?RCS: +?RCS: Revision 3.0.1.2 1995/07/25 13:55:59 ram +?RCS: patch56: improved comments about the Gconvert macro (ADO) +?RCS: patch56: force compile-link test since it may exist but be unusable (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/10/29 16:12:51 ram +?RCS: patch36: created by ADO +?RCS: +?MAKE:d_Gconvert: cat cc ccflags ldflags libs Inlibc rm _o +?MAKE: -pick add $@ %< +?S:d_Gconvert: +?S: This variable holds what Gconvert is defined as to convert +?S: floating point numbers into strings. It could be 'gconvert' +?S: or a more complex macro emulating gconvert with gcvt() or sprintf. +?S:. +?C:Gconvert: +?C: This preprocessor macro is defined to convert a floating point +?C: number to a string without a trailing decimal point. This +?C: emulates the behavior of sprintf("%g"), but is sometimes much more +?C: efficient. If gconvert() is not available, but gcvt() drops the +?C: trailing decimal point, then gcvt() is used. If all else fails, +?C: a macro using sprintf("%g") is used. Arguments for the Gconvert +?C: macro are: value, number of digits, whether trailing zeros should +?C: be retained, and the output buffer. +?C: Possible values are: +?C: d_Gconvert='gconvert((x),(n),(t),(b))' +?C: d_Gconvert='gcvt((x),(n),(b))' +?C: d_Gconvert='sprintf((b),"%.*g",(n),(x))' +?C: The last two assume trailing zeros should not be kept. +?C:. +?H:#define Gconvert(x,n,t,b) $d_Gconvert +?H:. +?T: xxx_list xxx_convert +?F:!try +?X: +: Check how to convert floats to strings. +echo " " +echo "Checking for an efficient way to convert floats to strings." +?X: We want to be sure to drop trailing decimal points (perl5 +?X: needs this). +$cat >try.c <<'EOP' +#ifdef TRY_gconvert +#define Gconvert(x,n,t,b) gconvert((x),(n),(t),(b)) +char *myname = "gconvert"; +#endif +#ifdef TRY_gcvt +#define Gconvert(x,n,t,b) gcvt((x),(n),(b)) +char *myname = "gcvt"; +#endif +#ifdef TRY_sprintf +#define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x)) +char *myname = "sprintf"; +#endif + +#include + +int +checkit(expect, got) +char *expect; +char *got; +{ + if (strcmp(expect, got)) { + printf("%s oddity: Expected %s, got %s\n", + myname, expect, got); + exit(1); + } +} + +int +int main() +{ + char buf[64]; + buf[63] = '\0'; + + /* This must be 1st test on (which?) platform */ + /* Alan Burlison */ + Gconvert(0.1, 8, 0, buf); + checkit("0.1", buf); + + Gconvert(1.0, 8, 0, buf); + checkit("1", buf); + + Gconvert(0.0, 8, 0, buf); + checkit("0", buf); + + Gconvert(-1.0, 8, 0, buf); + checkit("-1", buf); + + /* Some Linux gcvt's give 1.e+5 here. */ + Gconvert(100000.0, 8, 0, buf); + checkit("100000", buf); + + /* Some Linux gcvt's give -1.e+5 here. */ + Gconvert(-100000.0, 8, 0, buf); + checkit("-100000", buf); + + exit(0); +} +EOP +?X: List of order in which to search for functions. +?X: Usual order of efficiency is gconvert gcvt sprintf +?X: Respect a previous or hinted value. +case "$d_Gconvert" in +gconvert*) xxx_list='gconvert gcvt sprintf' ;; +gcvt*) xxx_list='gcvt gconvert sprintf' ;; +sprintf*) xxx_list='sprintf gconvert gcvt' ;; +*) xxx_list='gconvert gcvt sprintf' ;; +esac + +for xxx_convert in $xxx_list; do + echo "Trying $xxx_convert" + $rm -f try try$_o + if $cc $ccflags -DTRY_$xxx_convert $ldflags -o try \ + try.c $libs > /dev/null 2>&1 ; then + echo "$xxx_convert" found. >&4 + if ./try; then + echo "I'll use $xxx_convert to convert floats into a string." >&4 + break; + else + echo "...But $xxx_convert didn't work as I expected." + fi + else + echo "$xxx_convert NOT found." >&4 + fi +done + +case "$xxx_convert" in +gconvert) d_Gconvert='gconvert((x),(n),(t),(b))' ;; +gcvt) d_Gconvert='gcvt((x),(n),(b))' ;; +*) d_Gconvert='sprintf((b),"%.*g",(n),(x))' ;; +esac + diff --git a/mcon/U/d_getgrps.U b/mcon/U/d_getgrps.U new file mode 100644 index 0000000..0cd16ea --- /dev/null +++ b/mcon/U/d_getgrps.U @@ -0,0 +1,33 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getgrps.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:08 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_getgrps: Inlibc +?MAKE: -pick add $@ %< +?S:d_getgrps: +?S: This variable conditionally defines the HAS_GETGROUPS symbol, which +?S: indicates to the C program that the getgroups() routine is available +?S: to get the list of process groups. +?S:. +?C:HAS_GETGROUPS (GETGROUPS): +?C: This symbol, if defined, indicates that the getgroups() routine is +?C: available to get the list of process groups. If unavailable, multiple +?C: groups are probably not supported. +?C:. +?H:#$d_getgrps HAS_GETGROUPS /**/ +?H:. +?LINT:set d_getgrps +: see if getgroups exists +set getgroups d_getgrps +eval $inlibc + diff --git a/mcon/U/d_gethbynm.U b/mcon/U/d_gethbynm.U new file mode 100644 index 0000000..a7040ed --- /dev/null +++ b/mcon/U/d_gethbynm.U @@ -0,0 +1,32 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_gethbynm.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:08 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_gethbynm: Inlibc +?MAKE: -pick add $@ %< +?S:d_gethbynm (d_gethhstby): +?S: This variable conditionally defines the HAS_GETHOSTBYNAME symbol, which +?S: indicates to the C program that the gethostbyname() routine is available +?S: to lookup host names in some data base or other. +?S:. +?C:HAS_GETHOSTBYNAME (GETHOSTBYNAME): +?C: This symbol, if defined, indicates that the gethostbyname() routine is +?C: available to lookup host names in some data base or other. +?C:. +?H:#$d_gethbynm HAS_GETHOSTBYNAME /**/ +?H:. +?LINT:set d_gethbynm +: see if gethostbyname exists +set gethostbyname d_gethbynm +eval $inlibc + diff --git a/mcon/U/d_gethent.U b/mcon/U/d_gethent.U new file mode 100644 index 0000000..fa1427f --- /dev/null +++ b/mcon/U/d_gethent.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_gethent.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:09 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_gethent: Inlibc +?MAKE: -pick add $@ %< +?S:d_gethent: +?S: This variable conditionally defines HAS_GETHOSTENT if gethostent() is +?S: available to dup file descriptors. +?S:. +?C:HAS_GETHOSTENT (GETHOSTENT): +?C: This symbol, if defined, indicates that the gethostent routine is +?C: available to lookup host names in some data base or other. +?C:. +?H:#$d_gethent HAS_GETHOSTENT /**/ +?H:. +?LINT:set d_gethent +: see if gethostent exists +set gethostent d_gethent +eval $inlibc + diff --git a/mcon/U/d_gethid.U b/mcon/U/d_gethid.U new file mode 100644 index 0000000..d19c9f8 --- /dev/null +++ b/mcon/U/d_gethid.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_gethid.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:10 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_gethid: Inlibc +?MAKE: -pick add $@ %< +?S:d_gethid: +?S: This variable conditionally defines HAS_GETHOSTID if gethostid() is +?S: available to get the host id. +?S:. +?C:HAS_GETHOSTID (GETHOSTID): +?C: This symbol, if defined, indicates that the gethostid system call is +?C: available to get the host id. +?C:. +?H:#$d_gethid HAS_GETHOSTID /**/ +?H:. +?LINT:set d_gethid +: see if gethid exists +set gethostid d_gethid +eval $inlibc + diff --git a/mcon/U/d_gethname.U b/mcon/U/d_gethname.U new file mode 100644 index 0000000..8ce181f --- /dev/null +++ b/mcon/U/d_gethname.U @@ -0,0 +1,287 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_gethname.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:13:00 ram +?RCS: patch36: call ./xenix explicitely instead of relying on PATH +?RCS: +?RCS: Revision 3.0 1993/08/18 12:06:11 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_gethname d_uname d_phostname aphostname: phostname cat \ + myhostname package d_portable Loc echo n c +i_whoami +usrinc \ + Myread Guess Oldconfig Csym +?MAKE: -pick add $@ %< +?S:d_gethname: +?S: This variable conditionally defines the HAS_GETHOSTNAME symbol, which +?S: indicates to the C program that the gethostname() routine may be +?S: used to derive the host name. +?S:. +?S:d_uname: +?S: This variable conditionally defines the HAS_UNAME symbol, which +?S: indicates to the C program that the uname() routine may be +?S: used to derive the host name. +?S:. +?S:d_phostname: +?S: This variable conditionally defines the PHOSTNAME symbol, which +?S: contains the shell command which, when fed to popen(), may be +?S: used to derive the host name. +?S:. +?S:aphostname: +?S: Thie variable contains the command which can be used to compute the +?S: host name. The command is fully qualified by its absolute path, to make +?S: it safe when used by a process with super-user privileges. +?S:. +?C:HAS_GETHOSTNAME (GETHOSTNAME): +?C: This symbol, if defined, indicates that the C program may use the +?C: gethostname() routine to derive the host name. See also HAS_UNAME +?C: and PHOSTNAME. +?C:. +?C:HAS_UNAME (UNAME): +?C: This symbol, if defined, indicates that the C program may use the +?C: uname() routine to derive the host name. See also HAS_GETHOSTNAME +?C: and PHOSTNAME. +?C:. +?C:PHOSTNAME: +?C: This symbol, if defined, indicates that the C program may use the +?C: contents of PHOSTNAME as a command to feed to the popen() routine +?C: to derive the host name. See also HAS_GETHOSTNAME and HAS_UNAME. +?C: Note that the command uses a fully qualified path, so that it is safe +?C: even if used by a process with super-user privileges. +?C:. +?H:#$d_gethname HAS_GETHOSTNAME /**/ +?H:#$d_uname HAS_UNAME /**/ +?H:#$d_phostname PHOSTNAME "$aphostname" /* How to get the host name */ +?H:. +?T:file val call +?LINT:change i_whoami +: see how we will look up host name +echo " " +if false; then + : dummy stub to allow use of elif +@if HAS_GETHOSTNAME +elif set gethostname val -f d_gethname; eval $csym; $val; then + echo 'gethostname() found.' >&4 + d_gethname="$define" + call=gethostname +@end +@if HAS_UNAME +elif set uname val -f d_uname; eval $csym; $val; then + if ./xenix; then + $cat <<'EOM' +uname() was found, but you're running xenix, and older versions of xenix +have a broken uname(). If you don't really know whether your xenix is old +enough to have a broken system call, use the default answer. + +EOM + dflt=y + case "$d_uname" in + "$define") dflt=n;; + esac + rp='Is your uname() broken?' + . ./myread + case "$ans" in + n*) d_uname="$define"; call=uname;; + esac + else + echo 'uname() found.' >&4 + d_uname="$define" + call=uname + fi +@end +fi +case "$d_gethname" in +'') d_gethname="$undef";; +esac +case "$d_uname" in +'') d_uname="$undef";; +esac +@if PHOSTNAME || MYHOSTNAME +case "$d_uname$d_gethname" in +*define*) + dflt=n + cat <&4;; +@ end + esac;; +esac +@elsif PHOSTNAME +case "$d_uname$d_gethname" in +*define*) ;; +*) + case "$phostname" in + '') +@ if WHOAMI + case "$i_whoami" in + "$define") + $cat <&4;; + esac;; +@ else + echo "There will be no way for $package to get your hostname." >&4;; +@ end + *) + echo "I'll use 'popen("'"'$aphostname'", "r")'"' to get your hostname." >&4 + ;; + esac;; +esac +@elsif MYHOSTNAME +case "$d_uname$d_gethname" in +*define*) ;; +*) +@ if WHOAMI + case "$i_whoami" in + "$define") + dflt=y + $cat <&4;; + esac;; +@ else + echo 'Hardwiring "'$myhostname'".' >&4;; +@ end +esac +@end +case "$d_phostname" in +'') d_phostname="$undef";; +esac + diff --git a/mcon/U/d_getlogin.U b/mcon/U/d_getlogin.U new file mode 100644 index 0000000..abb9dd5 --- /dev/null +++ b/mcon/U/d_getlogin.U @@ -0,0 +1,34 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_getlogin.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:07:41 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_getlogin: Inlibc +?MAKE: -pick add $@ %< +?S:d_getlogin: +?S: This variable conditionally defines the HAS_GETLOGIN symbol, which +?S: indicates to the C program that the getlogin() routine is available +?S: to get the login name. +?S:. +?C:HAS_GETLOGIN : +?C: This symbol, if defined, indicates that the getlogin routine is +?C: available to get the login name. +?C:. +?H:#$d_getlogin HAS_GETLOGIN /**/ +?H:. +?LINT:set d_getlogin +: see if getlogin exists +set getlogin d_getlogin +eval $inlibc + diff --git a/mcon/U/d_getopt.U b/mcon/U/d_getopt.U new file mode 100644 index 0000000..c5438b4 --- /dev/null +++ b/mcon/U/d_getopt.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getopt.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:13 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_getopt: Inlibc +?MAKE: -pick add $@ %< +?S:d_getopt: +?S: This variable conditionally defines the HAS_GETOPT symbol, which +?S: indicates that the getopt() routine exists. The getopt() routine +?S: parses command line options in a standard fashion. +?S:. +?C:HAS_GETOPT (GETOPT): +?C: This symbol, if defined, indicates that the getopt() routine exists. +?C:. +?H:#$d_getopt HAS_GETOPT /**/ +?H:. +?LINT:set d_getopt +: see if getopt exists +set getopt d_getopt +eval $inlibc + diff --git a/mcon/U/d_getpagsz.U b/mcon/U/d_getpagsz.U new file mode 100644 index 0000000..6083653 --- /dev/null +++ b/mcon/U/d_getpagsz.U @@ -0,0 +1,104 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getpagsz.U,v $ +?RCS: Revision 3.0.1.1 1994/10/29 16:13:10 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0 1993/08/18 12:06:14 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_getpagsz pagesize: Oldconfig Myread Inlibc cat contains +cc +ccflags \ + libs rm Findhdr +?MAKE: -pick add $@ %< +?S:d_getpagsz: +?S: This variable conditionally defines HAS_GETPAGESIZE if getpagesize() +?S: is available to get the system page size. +?S:. +?S:pagesize (pagsize): +?S: This variable holds the size in bytes of a system page. +?S:. +?C:HAS_GETPAGESIZE (GETPAGESIZE): +?C: This symbol, if defined, indicates that the getpagesize system call +?C: is available to get system page size, which is the granularity of +?C: many memory management calls. +?C:. +?X: Don't name it PAGESIZE, this is sometimes used by +?C:PAGESIZE_VALUE (PAGSIZE): +?C: This symbol holds the size in bytes of a system page (obtained via +?C: the getpagesize() system call at configuration time or asked to the +?C: user if the system call is not available). +?C:. +?H:#$d_getpagsz HAS_GETPAGESIZE /**/ +?H:#define PAGESIZE_VALUE $pagesize /* System page size, in bytes */ +?H:. +?F:!page +?T:guess +?LINT:set d_getpagsz +: see if getpagesize exists +set getpagesize d_getpagsz +eval $inlibc + +@if pagesize || PAGESIZE_VALUE +: determine the system page size +echo " " +guess=' (OK to guess)' +case "$pagesize" in +'') + $cat >page.c <&4 + dflt='4096' + case "$d_getpagsz" in + "$define") + if $cc $ccflags -o page page.c $libs >/dev/null 2>&1; then + dflt=`./page` + guess='' + else + echo "(I can't seem to compile the test program--guessing)" + fi + ;; + *) + if $cc $ccflags -o page page.c $libs -lPW >/dev/null 2>&1; then + dflt=`./page` + guess='' + echo "(For your eyes only: I used the getpagesize() from -lPW.)" + else + if $contains PAGESIZE `./findhdr sys/param.h` >/dev/null 2>&1; then + $cat >page.c < +int main() +{ + printf("%d\n", PAGESIZE); +} +EOP + if $cc $ccflags -o page page.c $libs >/dev/null 2>&1; then + dflt=`./page` + guess='' + echo "(Using value of PAGESIZE found in .)" + fi + fi + fi + ;; + esac + ;; +*) dflt="$pagesize"; guess='';; +esac +rp="What is the system page size, in bytes$guess?" +. ./myread +pagesize=$ans +$rm -f page.c page + +@end diff --git a/mcon/U/d_getpgid.U b/mcon/U/d_getpgid.U new file mode 100644 index 0000000..de6a1a7 --- /dev/null +++ b/mcon/U/d_getpgid.U @@ -0,0 +1,34 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1996, Andy Dougherty +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getpgid.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 15:33:44 ram +?RCS: patch61: created +?RCS: +?MAKE:d_getpgid: Inlibc +?MAKE: -pick add $@ %< +?S:d_getpgid: +?S: This variable conditionally defines the HAS_GETPGID symbol, which +?S: indicates to the C program that the getpgid(pid) function +?S: is available to get the process group id. +?S:. +?C:HAS_GETPGID: +?C: This symbol, if defined, indicates to the C program that +?C: the getpgid(pid) function is available to get the +?C: process group id. +?C:. +?H:#$d_getpgid HAS_GETPGID /**/ +?H:. +?LINT:set d_getpgid +: see if getpgid exists +set getpgid d_getpgid +eval $inlibc + diff --git a/mcon/U/d_getpgrp.U b/mcon/U/d_getpgrp.U new file mode 100644 index 0000000..bc5f5d2 --- /dev/null +++ b/mcon/U/d_getpgrp.U @@ -0,0 +1,108 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getpgrp.U,v $ +?RCS: Revision 3.0.1.1 1997/02/28 15:34:28 ram +?RCS: patch61: new USE_BSD_GETPGRP to detect the getpgrp() flavour +?RCS: +?RCS: Revision 3.0 1993/08/18 12:06:15 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_getpgrp d_bsdgetpgrp: Guess Inlibc Setvar cat rm \ + +cc +ccflags +ldflags +libs i_unistd +?MAKE: -pick add $@ %< +?S:d_getpgrp: +?S: This variable conditionally defines HAS_GETPGRP if getpgrp() is +?S: available to get the current process group. +?S:. +?S:d_bsdgetpgrp: +?S: This variable conditionally defines USE_BSD_GETPGRP if +?S: getpgrp needs one arguments whereas USG one needs none. +?S:. +?C:HAS_GETPGRP (GETPGRP): +?C: This symbol, if defined, indicates that the getpgrp routine is +?C: available to get the current process group. +?C:. +?C:USE_BSD_GETPGRP: +?C: This symbol, if defined, indicates that getpgrp needs one +?C: arguments whereas USG one needs none. +?C:. +?H:#$d_getpgrp HAS_GETPGRP /**/ +?H:#$d_bsdgetpgrp USE_BSD_GETPGRP /**/ +?H:. +?F:!set !set.c +?T:xxx +?LINT:set d_getpgrp d_bsdgetpgrp +: see if getpgrp exists +set getpgrp d_getpgrp +eval $inlibc + +@if USE_BSD_GETPGRP || d_bsdgetpgrp +case "$d_getpgrp" in +"$define") + echo " " + echo "Checking to see which flavor of getpgrp is in use..." + $cat >set.c < +#ifdef I_UNISTD +# include +#endif +int main() +{ + if (getuid() == 0) { + printf("(I see you are running Configure as super-user...)\n"); + setuid(1); + } +#ifdef TRY_BSD_PGRP + if (getpgrp(1) == 0) + exit(0); +#else + if (getpgrp() > 0) + exit(0); +#endif + exit(1); +} +EOP + if $cc -DTRY_BSD_PGRP $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 + && ./set + then + echo "You have to use getpgrp(pid) instead of getpgrp()." >&4 + val="$define" + elif $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then + echo "You have to use getpgrp() instead of getpgrp(pid)." >&4 + val="$undef" + else + echo "I can't seem to compile and run the test program." + if ./usg; then + xxx="a USG one, i.e. you use getpgrp()." + else + # SVR4 systems can appear rather BSD-ish. + case "$i_unistd" in + $undef) + xxx="a BSD one, i.e. you use getpgrp(pid)." + val="$define" + ;; + $define) + xxx="probably a USG one, i.e. you use getpgrp()." + val="$undef" + ;; + esac + fi + echo "Assuming your getpgrp is $xxx" >&4 + fi + ;; +*) val="$undef";; +esac +set d_bsdgetpgrp +eval $setvar +$rm -f set set.c +@end + diff --git a/mcon/U/d_getpgrp2.U b/mcon/U/d_getpgrp2.U new file mode 100644 index 0000000..3aa5e1d --- /dev/null +++ b/mcon/U/d_getpgrp2.U @@ -0,0 +1,32 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getpgrp2.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:15 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_getpgrp2: Inlibc +?MAKE: -pick add $@ %< +?S:d_getpgrp2: +?S: This variable conditionally defines the HAS_GETPGRP2 symbol, which +?S: indicates to the C program that the getpgrp2() (as in DG/UX) routine +?S: is available to get the current process group. +?S:. +?C:HAS_GETPGRP2 (GETPGRP2): +?C: This symbol, if defined, indicates that the getpgrp2() (as in DG/UX) +?C: routine is available to get the current process group. +?C:. +?H:#$d_getpgrp2 HAS_GETPGRP2 /**/ +?H:. +?LINT:set d_getpgrp2 +: see if getpgrp2 exists +set getpgrp2 d_getpgrp2 +eval $inlibc + diff --git a/mcon/U/d_getppid.U b/mcon/U/d_getppid.U new file mode 100644 index 0000000..6754924 --- /dev/null +++ b/mcon/U/d_getppid.U @@ -0,0 +1,34 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_getppid.U,v $ +?RCS: Revision 3.0.1.1 1994/08/29 16:07:45 ram +?RCS: patch32: created by ADO +?RCS: +?MAKE:d_getppid: Inlibc +?MAKE: -pick add $@ %< +?S:d_getppid: +?S: This variable conditionally defines the HAS_GETPPID symbol, which +?S: indicates to the C program that the getppid() routine is available +?S: to get the parent process ID. +?S:. +?C:HAS_GETPPID : +?C: This symbol, if defined, indicates that the getppid routine is +?C: available to get the parent process ID. +?C:. +?H:#$d_getppid HAS_GETPPID /**/ +?H:. +?LINT:set d_getppid +: see if getppid exists +set getppid d_getppid +eval $inlibc + diff --git a/mcon/U/d_getprior.U b/mcon/U/d_getprior.U new file mode 100644 index 0000000..0397f1c --- /dev/null +++ b/mcon/U/d_getprior.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getprior.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:16 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_getprior: Inlibc +?MAKE: -pick add $@ %< +?S:d_getprior: +?S: This variable conditionally defines HAS_GETPRIORITY if getpriority() +?S: is available to get a process's priority. +?S:. +?C:HAS_GETPRIORITY (GETPRIORITY): +?C: This symbol, if defined, indicates that the getpriority routine is +?C: available to get a process's priority. +?C:. +?H:#$d_getprior HAS_GETPRIORITY /**/ +?H:. +: see if getpriority exists +?LINT:set d_getprior +set getpriority d_getprior +eval $inlibc + diff --git a/mcon/U/d_getpwent.U b/mcon/U/d_getpwent.U new file mode 100644 index 0000000..fbec685 --- /dev/null +++ b/mcon/U/d_getpwent.U @@ -0,0 +1,40 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getpwent.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:17 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_getpwent: Csym Setvar +?MAKE: -pick add $@ %< +?S:d_getpwent: +?S: This variable conditionally defines the HAS_GETPWENT symbol, which +?S: indicates to the C program that it should use the getpwent() +?S: routine instead of the getpw() routine. +?S:. +?C:HAS_GETPWENT (GETPWENT): +?C: This symbol, if defined, indicates that the getpwent() routine +?C: should be used instead of the getpw() routine. +?C:. +?H:#$d_getpwent HAS_GETPWENT /**/ +?H:. +?LINT:set d_getpwent +: see if there is a getpwent +echo " " +if set getpwent val -f d_getpwent; eval $csym; $val; then + echo "getpwent() found." >&4 + val="$define" +else + echo "No getpwent() found -- will use getpw() instead." >&4 + val="$undef" +fi +set d_getpwent +eval $setvar + diff --git a/mcon/U/d_getwd.U b/mcon/U/d_getwd.U new file mode 100644 index 0000000..987e93b --- /dev/null +++ b/mcon/U/d_getwd.U @@ -0,0 +1,41 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getwd.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:18 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_getwd: Csym Setvar +?MAKE: -pick add $@ %< +?S:d_getwd: +?S: This variable conditionally defines HAS_GETWD if getwd() is +?S: available to get working directory. If not, you should +?S: probably use getcwd(). +?S:. +?C:HAS_GETWD (GETWD): +?C: This symbol, if defined, indicates that the getwd routine is +?C: available to get working directory. If not, you should +?C: probably use getcwd(). +?C:. +?H:#$d_getwd HAS_GETWD /**/ +?H:. +?LINT:set d_getwd +: see if getwd exists +echo " " +if set getwd val -f d_getwd; eval $csym; $val; then + echo 'getwd() found.' >&4 + val="$define" +else + echo 'getwd() not found. Assuming getcwd() exists.' >&4 + val="$undef" +fi +set d_getwd +eval $setvar + diff --git a/mcon/U/d_gnulibc.U b/mcon/U/d_gnulibc.U new file mode 100644 index 0000000..ead5dfa --- /dev/null +++ b/mcon/U/d_gnulibc.U @@ -0,0 +1,98 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1996,1998 Andy Dougherty +?RCS: Copyright (c) 1996, Sven Verdoolaege +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_gnulibc gnulibc_version: Myread Oldconfig Setvar rm \ + cat Compile run +?MAKE: -pick add $@ %< +?S:d_gnulibc: +?S: Defined if we're dealing with the GNU C Library. +?S:. +?S:gnulibc_version: +?S: This variable contains the version number of the GNU C library. +?S: It is usually something like '2.2.5'. It is a plain '' if this +?S: is not the GNU C library, or if the version is unknown. +?S:. +?C:HAS_GNULIBC ~ %<: +?C: This symbol, if defined, indicates to the C program that +?C: the GNU C library is being used. A better check is to use +?C: the __GLIBC__ and __GLIBC_MINOR__ symbols supplied with glibc. +?C:. +?H:?%<:#$d_gnulibc HAS_GNULIBC /**/ +?H:?%<:#if defined(HAS_GNULIBC) && !defined(_GNU_SOURCE) +?H:?%<:#define _GNU_SOURCE +?H:?%<:#endif +?H:. +?F:!glibc.ver !try.c !try +?LINT: set d_gnulibc +?LINT: usefile try.c +?LINT: known _GNU_SOURCE +?X: gnulibc can be executed by calling __libc_main(). +?X: Ulrich Drepper doesn't think any other libc does that, +?X: but we check if it says 'GNU C Library' to be sure. +?X: +?X: Alas, as of 3/1998 glibc 2.0.7 reportedly isn't going to +?X: have __libc_main() anymore. :-(. Fortunately, all released +?X: versions of glibc 2.x.x _do_ have CPP variables. For 2.0.6, +?X: they are: +?X: #define __GLIBC__ 2 +?X: #define__GLIBC_MINOR__ 0. +?X: (The '6' isn't available :-(. +?X: glibc2.1 will also have +?X: extern const char * __gnu_get_libc_release(void); +?X: extern const char * __gnu_get_libc_version(void); +?X: functions. --thanks to Andreas Jaeger. --AD 6/1998. +?X: Although the exact format isn't documented, __gnu_get_libc_version() +?X: returns a simple string '2.1.3' in glibc 2.1.3. +?X: +: determine whether we are using a GNU C library +echo " " +echo "Checking for GNU C Library..." >&4 +cat >try.c <<'EOCP' +/* Find out version of GNU C library. __GLIBC__ and __GLIBC_MINOR__ + alone are insufficient to distinguish different versions, such as + 2.0.6 and 2.0.7. The function gnu_get_libc_version() appeared in + libc version 2.1.0. A. Dougherty, June 3, 2002. +*/ +#include +int main(void) +{ +#ifdef __GLIBC__ +# ifdef __GLIBC_MINOR__ +# if __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 1 +# include + printf("%s\n", gnu_get_libc_version()); +# else + printf("%d.%d\n", __GLIBC__, __GLIBC_MINOR__); +# endif +# else + printf("%d\n", __GLIBC__); +# endif + return 0; +#else + return 1; +#endif +} +EOCP +set try +if eval $compile_ok && $run ./try > glibc.ver; then + val="$define" + gnulibc_version=`$cat glibc.ver` + echo "You are using the GNU C Library version $gnulibc_version" +else + val="$undef" + gnulibc_version='' + echo "You are not using the GNU C Library" +fi +$rm -f try try.* glibc.ver +set d_gnulibc +eval $setvar + diff --git a/mcon/U/d_group.U b/mcon/U/d_group.U new file mode 100644 index 0000000..af841a7 --- /dev/null +++ b/mcon/U/d_group.U @@ -0,0 +1,23 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: Original Author: Andy Dougherty +?RCS: +?RCS: $Log: d_group.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 15:34:52 ram +?RCS: patch61: useless unit dropped. +?RCS: +?RCS: Revision 3.0.1.1 1994/08/29 16:07:48 ram +?RCS: patch32: created by ADO +?RCS: +?X: +?X: Useless unit dropped. +?X: +?LINT:empty diff --git a/mcon/U/d_havetlib.U b/mcon/U/d_havetlib.U new file mode 100644 index 0000000..b564e65 --- /dev/null +++ b/mcon/U/d_havetlib.U @@ -0,0 +1,125 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_havetlib.U,v $ +?RCS: Revision 3.0.1.2 1997/02/28 15:36:31 ram +?RCS: patch61: replaced .a with $_a all over the place +?RCS: patch61: likewise for .o replaced by $_o +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 14:44:06 ram +?RCS: patch23: added AIX support to accept shared lib stub as termlib (WED) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:06:19 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_havetlib termlib: cat contains Myread Loc Filexp Oldconfig libpth \ + test uname _a _o +?MAKE: -pick add $@ %< +?S:d_havetlib: +?S: This variable conditionally defines the HAS_TERMLIB symbol, which +?S: indicates to the C program that termlib-style routines are available. +?S:. +?S:termlib: +?S: This variable contains the argument to pass to the loader to get +?S: termlib-style routines. It is up to the Makefile.SH to make sure +?S: the value gets to the right command. Note that on many systems the +?S: termlib routines are emulated by the curses or terminfo library. +?S:. +?C:HAS_TERMLIB (HAVETERMLIB): +?C: This symbol, when defined, indicates that termlib-style routines +?C: are available. There is nothing to include. +?C:. +?H:#$d_havetlib HAS_TERMLIB /**/ +?H:. +?T:xxx +: where do we get termlib routines from +echo " " +xxx=`./loc libcurses$_a x $libpth` +case "$xxx" in +/*) + ar t $xxx >grimble + if $contains tputs$_o grimble >/dev/null 2>&1; then + termlib='-lcurses' + d_havetlib="$define" + echo "Terminfo library found." >&4 + elif $test "x`$uname 2>/dev/null`" = xAIX; then + # Ok, do the AIX shr.o fun thing + /usr/ccs/bin/nm -en $xxx 2>/dev/null >grimble + if $contains '^tputs .*|extern|' grimble >/dev/null 2>&1; then + termlib='-lcurses' + d_havetlib="$define" + echo "AIX Terminfo library found." >&4 + else + xxx=x + fi + else + xxx=x + fi + rm -f grimble + ;; +esac +case "$xxx" in +x) + xxx=`./loc libtermlib$_a x $libpth` + case "$xxx" in + /usr/lib*|/lib*) + termlib='-ltermlib' + d_havetlib="$define" + echo "Termlib library found." >&4 + ;; + /*) + termlib="$xxx" + d_havetlib="$define" + echo "Termlib library found." >&4 + ;; + *) + xxx=`./loc libtermcap$_a x $libpth` + case "$xxx" in + /usr/lib*|/lib*) + termlib='-ltermcap' + d_havetlib="$define" + echo "Termcap library found." >&4 + ;; + /*) + termlib="$xxx" + d_havetlib="$define" + echo "Termcap library found." >&4 + ;; + *) + case "$termlib" in + '') + dflt=y +rp="Your system appears to NOT have termlib-style routines. Is this true?" + . ./myread + case "$ans" in + n*|f*) d_havetlib="$define" + $cat <<'EOM' +Then where are the termlib-style routines kept? Specify either -llibname +or a full pathname (~name ok). + +EOM + dflt='' + rp='Specify termlib path:' + . ./myread + termlib=`./filexp $ans` + ;; + *) + d_havetlib="$undef" + termlib='' + echo "You will have to play around with term.c then." >&4 + ;; + esac + echo " ";; + *) echo "You said termlib was $termlib before." >&4;; + esac;; + esac;; + esac;; +esac + diff --git a/mcon/U/d_hidnet.U b/mcon/U/d_hidnet.U new file mode 100644 index 0000000..ce952f4 --- /dev/null +++ b/mcon/U/d_hidnet.U @@ -0,0 +1,68 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_hidnet.U,v $ +?RCS: Revision 3.0 1993/08/18 12:06:20 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_hidnet hiddennet: cat sed myhostname mydomain Myread Oldconfig +?MAKE: -pick add $@ %< +?S:d_hidnet: +?S: This variable conditionally defines the symbol HIDDEN_NET, which +?S: tells the C program that it should pretend it is on a different +?S: host for purposes of advertising a mailing address. +?S:. +?S:hiddennet: +?S: This variable contains the value eventually given to the symbol +?S: HIDDEN_NET, if d_hidnet defines it. If defined, it's the name +?S: of the host which serves as the mail server for a network that +?S: is invisible to the outside world. +?S:. +?C:HIDDEN_NET (HIDDENNET): +?C: This symbol, if defined, contains the host name that you want to +?C: advertise to the outside world. This name can be different from +?C: your actual host name, as long as the machine you specify knows +?C: how to forward mail to you. +?C:. +?H:#$d_hidnet HIDDEN_NET "$hiddennet" /**/ +?H:. +: now get the host name to advertise as our mailing address +case "$hiddennet" in +'') dflt=n;; +*) dflt=y;; +esac +$cat <

exp: Oldconfig Getfile +?MAKE: -pick add $@ %< +?S:: +?S: Where files are located. The name may have ~ on the front. +?S:. +?S:exp: +?S: This is the same as the variable, but is filename expanded +?S: so that later Configure units can look at the directory if desired. +?S:. +?C:<%DIR>: +?C: The directory where files are located. The name may have ~ on +?C: the front so the C program must be prepared to do ~ expansion. +?C:. +?C:<%DIR>_EXP: +?C: The same as , but ~name expantion has been done by Configure. +?C:. +?H:#define <%DIR> "$" /**/ +?H:#define <%DIR>_EXP "$exp" /**/ +?H:. +: locate directory +echo " " +case "$" in +'') + dflt= + ;; +*) dflt="$";; +esac +fn=d~ +rp='Where is the directory?' +. getfile +="$ans" +exp="$ansexp" + diff --git a/mcon/files/file.U b/mcon/files/file.U new file mode 100644 index 0000000..962bea5 --- /dev/null +++ b/mcon/files/file.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: file.U,v $ +?RCS: Revision 3.0 1993/08/18 12:10:06 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE: exp: Oldconfig Getfile +?MAKE: -pick add $@ %< +?S:: +?S: The name of the file. The name may have ~ on the front. +?S:. +?S:exp: +?S: This is the same as the variable, but is filename expanded +?S: so that later Configure units can look at the file if desired. +?S:. +?C:<%FILE>: +?C: The name of the file. The name may have ~ on the front so the +?C: program must be prepared to do filename expansion. +?C:. +?C:<%FILE>_EXP: +?C: The same as but ~name expansion has been done by Configure. +?C:. +?H:#define <%FILE> "$" /**/ +?H:#define <%FILE>_EXP "$exp" /**/ +?H:. +: locate file +echo " " +case "$" in +'') + dflt= + ;; +*) dflt="$";; +esac +fn=f~ +rp='Where is the file?' +. getfile +="$ans" +exp="$ansexp" + diff --git a/mcon/files/i_include.U b/mcon/files/i_include.U new file mode 100644 index 0000000..8abd462 --- /dev/null +++ b/mcon/files/i_include.U @@ -0,0 +1,32 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: i_include.U,v $ +?RCS: Revision 3.0 1993/08/18 12:10:07 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:i_: Inhdr +?MAKE: -pick add $@ %< +?S:i_: +?S: This variable conditionally defines the I_<%INCLUDE> symbol, which +?S: indicates to the C program that <.h> exists and should +?S: be included. +?S:. +?C:I_<%INCLUDE>: +?C: This symbol, if defined, indicates that <.h> exists and should +?C: be included. +?C:. +?H:#$i_ I_<%INCLUDE> /**/ +?H:. +?LINT:set i_ +: see if .h is available +set .h i_ +eval $inhdr + diff --git a/mcon/files/keyword.U b/mcon/files/keyword.U new file mode 100644 index 0000000..c94a5c7 --- /dev/null +++ b/mcon/files/keyword.U @@ -0,0 +1,54 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: keyword.U,v $ +?RCS: Revision 3.0 1993/08/18 12:10:08 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_const: cat cc ccflags Setvar +?MAKE: -pick add $@ %< +?S:d_: +?S: This variable conditionally defines the HASCONST symbol, which +?S: indicates to the C program that this C compiler knows about the +?S: type. +?S:. +?C:HAS<%KEY> ~ %<: +?C: This symbol, if defined, indicates that this C compiler knows about +?C: the type. There is no need to actually test for that symbol +?C: within your programs. The mere use of the "" keyword will +?C: trigger the necessary tests. +?C:. +?H:?%<:#$d_ HAS<%KEY> /**/ +?H:?%<:#ifndef HAS<%KEY> +?H:?%<:#define +?H:?%<:#endif +?H:. +?W:%<: +?LINT:set d_ +?LINT:known +: check for keyword +echo " " +echo 'Checking to see if your C compiler knows about ""...' +$cat >.c <<'EOCP' +main() +{ + char *foo; +} +EOCP +if $cc -c $ccflags .c >/dev/null 2>&1 ; then + val="$define" + echo "Yup, it does." +else + val="$undef" + echo "Nope, it doesn't." +fi +set d_ +eval $setvar + diff --git a/mcon/files/locate.U b/mcon/files/locate.U new file mode 100644 index 0000000..3793062 --- /dev/null +++ b/mcon/files/locate.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: locate.U,v $ +?RCS: Revision 3.0 1993/08/18 12:10:08 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE: exp: Oldconfig Getfile +?MAKE: -pick add $@ %< +?S:: +?S: The name of the file. The name may have ~ on the front. +?S:. +?S:exp: +?S: This is the same as the variable, but is filename expanded +?S: so that later Configure units can look at the file if desired. +?S:. +?C:<%FILE>: +?C: The name of the file. The name may have ~ on the front so the +?C: program must be prepared to do filename expansion. +?C:. +?C:<%FILE>_EXP: +?C: The same as but ~name expansion has been done by Configure. +?C:. +?H:#define <%FILE> "$" /**/ +?H:#define <%FILE>_EXP "$exp" /**/ +?H:. +: locate file +echo " " +case "$" in +'') + dflt= + ;; +*) dflt="$";; +esac +fn=l~: +rp='Where is the file?' +. getfile +="$ans" +exp="$ansexp" + diff --git a/mcon/files/question.U b/mcon/files/question.U new file mode 100644 index 0000000..56e38b5 --- /dev/null +++ b/mcon/files/question.U @@ -0,0 +1,58 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: question.U,v $ +?RCS: Revision 3.0 1993/08/18 12:10:09 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_scorfl: cat Myread Oldconfig nametype Setvar +?MAKE: -pick add $@ %< +?S:d_scorfl: +?S: This variable conditionally defines the SCOREFULL symbol, which +?S: indicates to the C program that any scoreboard kept by the program +?S: should be kept on the basis of the user's full name as opposed to +?S: the user's login name. +?S:. +?C:SCOREFULL: +?C: This symbol, if defined, indicates that any scoreboard kept by the +?C: program should be kept on the basis of the user's full name as opposed +?C: to the user's login name. If the user can change his full name he +?C: can enter multiple scores if this is defined. +?C:. +?H:#$d_scorfl SCOREFULL /**/ +?H:. +?LINT:set d_scorfl +: see how they want the scoreboard kept +case "$d_scorfl" in +"$define") dflt=y ;; +*) dflt=n ;; +esac +case "$nametype" in +other) val="$undef" ;; +*) + $cat <<'EOM' + +The scoreboard can be kept with one score per login name, or one score per full +name. If users can change their full name, or if there is more than one person +on your system with the same full name, you should keep the score by login name +(the full name is still printed). + +EOM + rp='Do you want the scoreboard kept by full name?' + . myread + case "$ans" in + y*) val="$define" ;; + *) val="$undef" ;; + esac + ;; +esac +set d_scorfl +eval $setvar + diff --git a/mcon/files/rcshead.U b/mcon/files/rcshead.U new file mode 100644 index 0000000..67a14df --- /dev/null +++ b/mcon/files/rcshead.U @@ -0,0 +1,15 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: rcshead.U,v $ +?RCS: Revision 3.0 1993/08/18 12:10:10 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: + diff --git a/mcon/files/shell.U b/mcon/files/shell.U new file mode 100644 index 0000000..5949b9d --- /dev/null +++ b/mcon/files/shell.U @@ -0,0 +1,68 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: shell.U,v $ +?RCS: Revision 3.0 1993/08/18 12:10:10 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:cc: cat contains sysman +large Mcc Myread Guess Oldconfig Loc +?MAKE: -pick add $@ %< +?DEF:cc=cc +?S:cc: +?S: This variable holds the name of a command to execute a C compiler which +?S: can resolve multiple global references that happen to have the same +?S: name. Usual values are "cc", "Mcc", "cc -M", and "gcc". +?S:. +: see if we need a special compiler +echo " " +if usg; then + case "$cc" in + '') case "$Mcc" in + /*) dflt='Mcc';; + *) case "$large" in + -M*) dflt='cc';; + *) if $contains '\-M' $sysman/cc.1 >/dev/null 2>&1 ; then + if $contains '\-M' $sysman/cpp.1 >/dev/null 2>&1; then + dflt='cc' + else + dflt='cc -M' + fi + else + dflt='cc' + fi;; + esac;; + esac;; + *) dflt="$cc";; + esac + $cat <<'EOM' +On some systems the default C compiler will not resolve multiple global +references that happen to have the same name. On some such systems the "Mcc" +command may be used to force these to be resolved. On other systems a "cc -M" +command is required. (Note that the -M flag on other systems indicates a +memory model to use!) If you have the Gnu C compiler, you might wish to use +that instead. + +EOM + rp="What command will force resolution on this system?" + . myread + cc="$ans" +else + case "$cc" in + '') dflt=cc;; + *) dflt="$cc";; + esac + rp="Use which C compiler?" + . myread + cc="$ans" +fi +case "$cc" in +gcc*) cpp=`loc gcc-cpp $cpp $pth`;; +esac + diff --git a/mcon/files/type.U b/mcon/files/type.U new file mode 100644 index 0000000..583b29a --- /dev/null +++ b/mcon/files/type.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: type.U,v $ +?RCS: Revision 3.0 1993/08/18 12:10:11 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:uidtype: Myread Oldconfig contains usrinc +?MAKE: -pick add $@ %< +?S:uidtype: +?S: This variable defines UIDTYPE to be something like uid_t, int, +?S: ushort, or whatever type is used to declare user ids in the kernel. +?S:. +?C:Uid_t (UIDTYPE): +?C: This symbol holds the type used to declare user ids in the kernel. +?C: It can be int, ushort, uid_t, etc... It may be necessary to include +?C: to get any typedef'ed information. +?C:. +?H:#define Uid_t $uidtype /* UID type */ +?H:. +: see what type uids are declared as in the kernel +case "$uidtype" in +'') + if $contains 'uid_t;' $usrinc/sys/types.h >/dev/null 2>&1 ; then + dflt='uid_t'; + else + set `grep '_ruid;' $usrinc/sys/user.h 2>/dev/null` unsigned short + case $1 in + unsigned) dflt="$1 $2" ;; + *) dflt="$1" ;; + esac + fi + ;; +*) dflt="$uidtype";; +esac +echo " " +rp="What type are user ids on this system declared as?" +. myread +uidtype="$ans" + diff --git a/mcon/makegloss.SH b/mcon/makegloss.SH new file mode 100755 index 0000000..991a214 --- /dev/null +++ b/mcon/makegloss.SH @@ -0,0 +1,217 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting mcon/makegloss (with variable substitutions)" +$spitshell >makegloss <>makegloss <<'!NO!SUBS!' +# $Id$ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# Original Author: Larry Wall +# +# $Log: makegloss.SH,v $ +# Revision 3.0.1.3 1994/01/24 14:17:49 ram +# patch16: now understands internal-use only defined variables +# +# Revision 3.0.1.2 1993/10/16 13:50:39 ram +# patch12: updated to support new ?M: lines +# +# Revision 3.0.1.1 1993/08/19 06:42:21 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:12 ram +# Baseline for dist 3.0 netwide release. +# + +open(G,">Glossary") || die "Can't create Glossary.\n"; +print G +'[This Glossary is automatically generated from the Unit files. Do not edit +this file or your changes will be lost. Edit the appropriate Unit instead.] + +This file contains a listing of all the C preprocessor symbols and shell +variables whose value can be determined by a Configure script. For the +most part, any symbol in UPPERCASE is a C preprocessor symbol, and +will be defined in config.h. Symbols in lowercase are shell variables, +and are defined in config.sh. + +If you write your shell scripts and C programs in terms of these symbols, +metaconfig can automatically build you a Configure script that will determine +the value of those symbols. See the README file for a description of how +to use metaconfig. + +In the following listing, the Unit: line indicates the name of the unit +where this symbol is defined, and the Wants: line indicates what other +symbols must be determined in order to figure out the value of this one. +If there is an "(Also defines ...)" entry, it indicates what other symbols +are defined by the Unit other than the one corresponding to the unit name. + +Variable of the form d_* either have the value "define" or "/*define", and +control whether some C preprocessor symbol gets defined or not. + +'; + +@ARGV = ; +while (<>) { + if (/^\?[\w\-]+:/) { # We may have found a control line + # Long lines may be escaped with a final backslash + $_ .= &complete_line if s/\\\s*$//; + } + if (/^\?MAKE:.*:/) { + ($also, $wants) = /^\?MAKE:\s*(.*):\s*(.*)/; + ($unit = $ARGV) =~ s|.*/(.*)\.U$|$1|; + @Also = split(/ /, $also); + $also = ''; + $internal = ''; + foreach (@Also) { + if (s/^\+//) { + $internal .= "$_ "; + } else { + $also .= "$_ "; + } + } + $also =~ s/$unit\s//; + chop($also); + chop($internal); + @Wants = split(/ /, $wants); + $wants = ''; + $option = ''; + foreach (@Wants) { + if (s/^\+//) { + $option .= "$_ "; + } else { + $wants .= "$_ "; + } + } + chop($option); + chop($wants); + $head = ''; + $_ = "Unit: $unit"; + $_ .= " (Also defines $also)" if $also; + $_ .= " (With private $internal)" if $internal; + $head .= &format($_); + if ($wants) { + $_ = "Wants: $wants"; + $head .= &format($_); + } + if ($option) { + $_ = "Optional: $option"; + $head .= &format($_); + } + $head .= "\n"; + } + + # Example of expression matched by the following pattern: + # ?C:symbol ~ alias (obsolete list): + # The main symbol (optionally aliased) can be followed by a list of + # obsolete symbols (the list is space separated). + + if (/^\?[CS]:(\w+)(\s*~\s*\S+)?\s*(\(.*\))?:\s*$/) { + $sym = $1; + $obsoleted = $3; + push(@syms, $sym); + $header{$sym} .= $head; + if ($obsoleted =~ s/^\((.*)\)$/$1/) { + @obsoleted = split(' ', $obsoleted); + foreach $obs (@obsoleted) { + push(@syms, $obs); + $header{$obs} = "\tObsoleted by $sym.\n\n"; + } + } + } + elsif (s/^\?[CS]://) { # Must be inside definition + if (/^\.$/) { # Closing line + $def{$sym} .= "\n"; + $sym = ''; + } + else { + s/^(\t| ? ? ? ? ? ? ?)//; + $def{$sym} .= "\t" . $_; + } + } + elsif (/^\?M:(\w+):\s*([\w\s]*)\n$/) { # Magic mapping introduction + $sym = $1; + $cdep = $2; + push(@syms, $sym); + $cdep =~ s/^\s*//; + $cdep = ", needs: $cdep" if $cdep ne ''; + $header{$sym} = "\tMagic symbol$cdep\n" . $head; + } + elsif (s/^\?M://) { # Must be a magic mapping definition + if (/^\.$/) { # Closing line + $def{$sym} .= "\n"; + $sym = ''; + } else { + $def{$sym} .= "\t" . $_; + } + } +} + +foreach $sym (sort @syms) { + print G "$sym:\n"; + print G $header{$sym}; + print G $def{$sym}; +} +close G; + +# Format $_ to fit in 80 columns (70 + size of tabs) +# Long lines are split, and the all but the first are indented +# by two leading spaces. The whole thing is then indented by +# one tab. +sub format { + local($tmp); + local($head) = ''; + local($_) = shift(@_); + while (length($_) > 70) { + $tmp = substr($_,0,70); + $tmp =~ s/^(.*) .*/$1/; + $head .= "\t$tmp\n"; + $_ = ' ' . substr($_,length($tmp),9999); + } + $head .= "\t$_\n"; +} + +# The first line was escaped with a final \ character. Every following line +# is to be appended to it (until we found a real \n not escaped). Note that +# the leading spaces of the continuation line are removed, so any space should +# be added before the former \ if needed. +sub complete_line { + local($_); + local($read) = ''; # Concatenation of all the continuation lines found + while (<>) { + s/^\s+//; # Remove leading spaces + if (s/\\\s*$//) { # Still followed by a continuation line + $read .= $_; + } else { # We've reached the end of the continuation + return $read . $_; + } + } +} + +!NO!SUBS! +chmod 755 makegloss +$eunicefix makegloss diff --git a/mcon/man/Jmakefile b/mcon/man/Jmakefile new file mode 100644 index 0000000..737f8c9 --- /dev/null +++ b/mcon/man/Jmakefile @@ -0,0 +1,24 @@ +/* + * Jmakefile for metaconfig manual pages + */ + +;# $Id: Jmakefile,v 3.0 1993/08/18 12:10:13 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0 1993/08/18 12:10:13 ram +;# Baseline for dist 3.0 netwide release. +;# + +>L /* I expect to fix this with a |append command */ + +MPAGES = metaconfig.$(L) metalint.$(L) metaxref.$(L) + +ComplexShellManualTarget($(MPAGES)) diff --git a/mcon/man/Makefile.SH b/mcon/man/Makefile.SH new file mode 100755 index 0000000..f146784 --- /dev/null +++ b/mcon/man/Makefile.SH @@ -0,0 +1,167 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] +: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ + +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=mcon/man +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0 1993/08/18 12:10:13 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0 1993/08/18 12:10:13 ram +# Baseline for dist 3.0 netwide release. +# + +MPAGES = metaconfig.$(L) metalint.$(L) metaxref.$(L) + +all:: $(MPAGES) + +local_realclean:: + $(RM) $(MPAGES) + +install.man:: + @if test "$(MANSRC)"; then \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(MPAGES); do \ + (set -x; $(INSTALL) -c -m 444 $$file $(MANSRC)); \ + done; \ + else exit 0; fi + +deinstall.man:: + @if test "$(MANSRC)"; then \ + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(MPAGES); do \ + (set -x; $(RM) $(MANSRC)/$$file); \ + done; \ + else exit 0; fi + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: local_clean +realclean: local_realclean +clobber: local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Empty rules for directories with no sub-directories -- do not edit + +install:: + @echo "install in $(CURRENT) done." + +deinstall:: + @echo "deinstall in $(CURRENT) done." + +install.man:: + @echo "install.man in $(CURRENT) done." + +deinstall.man:: + @echo "deinstall.man in $(CURRENT) done." + +Makefiles:: + +Makefiles.SH:: + +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH new file mode 100755 index 0000000..059091b --- /dev/null +++ b/mcon/man/mconfig.SH @@ -0,0 +1,2103 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting mcon/man/metaconfig.$manext (with variable substitutions)" +$rm -f metaconfig.$manext +$spitshell >metaconfig.$manext < macro substitution +''' +''' Revision 3.0.1.5 1993/10/16 13:51:50 ram +''' patch12: new option -M to activate ?M: lines +''' patch12: documents new ?M: lines format +''' patch12: new internal Makefile command cm_h_weed for ?M: support +''' patch12: documents usage for new confmagic.h file +''' +''' Revision 3.0.1.4 1993/09/09 11:50:35 ram +''' patch9: lots of typo fixes and abusive variable substitution problems +''' +''' Revision 3.0.1.3 1993/08/30 08:53:51 ram +''' patch8: wrongly stated that patchlevel.h should not be part of MANIFEST.new +''' +''' Revision 3.0.1.2 1993/08/24 12:13:32 ram +''' patch3: typo fixes +''' +''' Revision 3.0.1.1 1993/08/19 06:42:23 ram +''' patch1: leading config.sh searching was not aborting properly +''' +''' Revision 3.0 1993/08/18 12:10:14 ram +''' Baseline for dist 3.0 netwide release. +''' +''' +.de Ex \" Start of Example +.sp +.in +5 +.nf +.. +.de Ef \" End of Example +.sp +.in -5 +.fi +.. +.SH NAME +metaconfig \- a Configure script generator +.SH SYNOPSIS +.B metaconfig +[ \-\fBdhkmostvwGMV\fR ] +[ \-\fBL \fIdir\fR ] +.SH DESCRIPTION +.I Metaconfig +is a program that generates Configure scripts. If you don't know what a +Configure script is, please skip to the \fBTUTORIAL\fR section of this +manual page. If you want a full (formal) description of the way to +use \fImetaconfig\fR and its units, please look at the \fBREFERENCE\fR +section. The following is a quick introduction and reference for +knowledgeable users. +.PP +.B Metaconfig +operates from set of +.I units +which define everything that metaconfig knows about portability. +Each unit is self-contained, and does not have to be registered anywhere +other than by inclusion in either the public U directory or your private +U directory. +If the dist package (of which metaconfig is a part) is installed in LIB, +then the public U directory is LIB/dist/mcon/U. On this machine, the +LIB directory is $privlibexp. +Your private U directory, if you have one, +is in the top level directory of your package. +Before you can run \fImetaconfig\fR you must do a several things: +.IP \(bu 5 +Create a .package file in the package's top level directory by running +\fIpackinit\fR. +This program will ask you about your package and remember what you tell +it so that all the dist programs can be smart. +.IP \(bu +Consult the Glossary (in LIB/dist/mcon) and write your shell scripts and +C programs in terms of the symbols that metaconfig knows how to define. +You don't need to tell metaconfig which symbols you used, since metaconfig +will figure that out for you. +.IP \(bu +Generate any .SH scripts needed to write Makefiles or shell scripts that +will depend on values defined by Configure. +There is a program called \fImakeSH\fR that will help you convert a plain +script into a script.SH template; some editing will still need to be performed +on the resulting .SH file to move the variable configuration part in the +top part of the script (see inline comments generated by \fImakeSH\fR within +your .SH file). +.IP \(bu +Create a MANIFEST.new file in your top level directory that lists all the +files in your package. This file will remain private and will not be +part of the final distribution. +The filename should be the first field on each line. +After some whitespace you can add a short comment describing your file. +Only source files should be listed in there. The special file +\fIpatchlevel.h\fR (which is handled and maintained by the patching tools -- +see \fIpat\fR(1)) should be part of the MANIFEST.new file, but may be +silently ignored by some tools. As a rule of +thumb, only files maintained by RCS should be listed in there, +the \fIpatchlevel.h\fR file being one important exception. +.IP \(bu +Optionally, you may wish to create a MANIFEST file, which will be an +exported version of your MANIFEST.new. That file must be made part of +the release, i.e. listed in both your MANIFEST.new and MANIFEST itself. +One of the \fImetaconfig\fR units knows about this file and will force +Configure to perform a release check, ensuring all the files listed +there are part of the distribution. The MANIFEST and MANIFEST.new +files should be distinct, not links. +.IP \(bu +Copy any .U files that you want to modify to your private U directory. +Any .U files in your private U directory will be used in preference to +the one in the public U directory. +For example, one way to force inclusion of any unit is to copy the End.U +file to your .U directory and add the name of the unit you want as +a dependency on the end of the ?MAKE: line. +Certain units can ONLY be forced in this way, namely those of the form +Warn_*.U and Chk_*.U. +You can also customize certain default Configure variables by copying +Myinit.U to your package's private U directory and setting the variables in +that unit. +.PP +Now you are ready to run \fImetaconfig\fR. That will create a \fIConfigure\fR +file, and optionally a \fIconfig_h.SH\fR file (if your sources make any use +of C symbols). +The generated files will automatically be added to your MANIFEST.new +if necessary. Do not forget to update your MANIFEST file though. +.PP +In order to create new units, do the following: +.IP \(bu 5 +Copy a similar unit to a new .U file. +The name you choose should be the name of a variable generated by the unit, +although this is only a convenience for you, not a requirement. +It should be 12 or less characters to prevent filename chopping. +Actually, it should probably be 10 or less so that those who want to use RCS +can have a .U,v on the end without chopping. +Metaconfig uses the case of the first letter to determine if any variable is +actually produced by this unit, so don't Capitalize your unit +name if it is supposed to produce a shell variable. +.IP \(bu +Edit the new .U file to do what you want. +The first ?MAKE: line indicates the dependencies; before the final list +colon all the variables this unit defines, and after the final colon +all the variables (or other units) on which this unit depends. +It is very important that these lists be accurate. If a dependency is +optional and a default value can be used, you should prefix the dependency +with a '+' sign. The corresponding unit will not be loaded to compute the +symbol, unless really required by another unit. +.IP \(bu +To the extent possible, parameterize your unit based on shell +variable defined on ?INIT: lines. +This will move the variable definitions up to the Init.U unit, +where they can be overridden by definitions in Myinit.U, which is +included after Init.U. +.IP \(bu +Add the definition of any C symbols desired as ?H: lines. +A line beginning with ?H:?%<: in the .U file will be added to the eventual +config.h file if and only if metaconfig decides that this unit is needed. +The %< stands for the unit's name, which happens to be the name of +the file too (without .U) if you followed the convention. +Always put a comment on each ?H: line in case one of the variable +substitutions earlier on the line starts a comment without finishing it. +Any shell variable starting with d_ may do this, so beware. +If you ommit the ?%<:, then metaconfig will try to intuit the symbol whose +definition is needed prior any inclusion in config.h. +.IP \(bu +Add glossary definitions as ?S: lines for shell variables and ?C: +lines for C preprocessor variables. +See a current unit for examples. +It is VERY important to start each entry with a left justified symbol +name, and end each entry with a ?C:. or ?S:. line. The algorithm +that translates C preprocessor symbol entries for the Glossary into +comments for config.h depends on this. +.IP \(bu +Make sure the order of all your ? lines is right. The correct order is: +.sp +.RS +10 +.PD 0 +.TP 15 +?RCS: and ?X: +basically just comments +.TP +?MAKE: +metaconfig dependencies +.TP +?Y: +unit layout directive +.TP +?S: +glossary shell definitions +.TP +?C: +glossary C definitions +.TP +?H: +config.h definitions +.TP +?M: +confmagic.h definitions +.TP +?W: +wanted symbols +.TP +?V: +visible symbols +.TP +?F: +files created by this unit +.TP +?T: +temporary shell symbols used +.TP +?D: +optional dependencies default value +.TP +?O: +used to mark obsolete units +.TP +?LINT: +metalint hints +.TP +?INIT: +shell symbols initializations +.PD +.RE +.PP +Here is an example to show the ordering of the lines and the various +formats allowed: +.Ex +?RCS: \$RCS-Id\$ +?RCS: Copyright information +?RCS: \$RCS-Log\$ +?X: +?X: A contrived example +?X: +?MAKE:d_one two: three +four Five +?MAKE: -pick add \$@ %< +?Y:DEFAULT +?S:d_one: +?S: First shell symbol, conditionally defines ONE. +?S:. +?S:two: +?S: Second shell symbol, value for TWO. +?S:. +?C:ONE: +?C: First C symbol. +?C:. +?C:TWO: +?C: Second C symbol. +?C:. +?H:#\$d_one ONE /**/ +?H:#define TWO "\$two" +?H:#\$d_one ONE_TWO "\$two" +?H:. +?M:flip: HAS_FLIP +?M:#ifndef HAS_FLIP +?M:#define flip(x) flop(x) +?M:#endif +?M:. +?W:%<:one_two +?V:p_one p_two:p_three +?F:file ./ftest !tmp +?T:tmp var +?D:two='undef' +?LINT:change three +?INIT:two_init='2' +: shell code implementing the unit follows +p_one='one' +p_two='two' +p_three="$three" +.Ef +Let me state it one more time: the above unit definition is a \fIfake\fR +one to only show the different possibilities. Such a unit would serve +little purpose anyway... Some more advanced features are not described +here. Please refer to the \fBREFERENCE\fR section for more complete +information. +.IP \(bu +Put the unit into the public or private U directory as appropriate. +.IP \(bu +Rerun \fImetaconfig\fR. +.IP \(bu +Send your unit to ram@acri.fr (Raphael Manfredi) for inclusion +in the master copy, if you think it's of general interest. +.PP +In order to add a new program to be located: +.IP \(bu +Edit Loc.U, and add the name of the program both to the ?MAKE: line +(between the two colons) and to either loclist or trylist (depending +on whether the program is mandatory or not). +.IP \(bu +Rerun metaconfig. +.IP \(bu +Send your unit to me for inclusion in the master copy, if you think it's +of general interest. +.PP +Notes for writing .U files: +.IP * 5 +Always use "rm -f" because there are systems where rm is interactive by +default. +.IP * +Do not use "set -- ..." because '--' does not work with every shell. Use +"set x ...; shift". +.IP * +Do not use "unset ENV" since unset is not fully portable. Say "ENV=''" +instead. +.IP * +Always use echo " " (with a space) because of Eunice systems. +.IP * +Only use \fBtest\fR with \-r, \-w, \-f or \-d since those are the only +portable switches. In particular, avoid "test -x". +.IP * +Use only programs that came with V7, so that you know everyone has them. +.IP * +Use \$\&contains when you want to grep conditionally, since not all +greps return a reasonable status. +Be sure to redirect the output to /dev/null, by using '>/dev/null 2>&1'. +.IP * +Use "if test" rather than "if [...]" since not every sh knows the +latter construct. +.IP * +Use the myread script for inputs so that they can do shell escapes +and default evaluation. The general form is +.Ex +case "\$grimble" in +\&'') dflt=452;; +*) dflt="\$grimble";; +esac +rp='How many grimbles do you have?' +\&. ./myread +grimble="\$ans" +.Ef +.IP * +Use the getfile script when asking for a file pathname in order to +have optional ~name expansion and sanity checks. See the Getfile.U +unit for a full decription. +.IP * +Always put a +.Ex + \$startsh +.Ef +at the top of every generated script that is going to be launched +or sourced by \fIConfigure\fR. +.IP * +Never assume common UNIX-isms like the fact that an object file ends +with a \fI.o\fR and that a library name ends with \fI.a\fR. +Use the \fI\$_o\fR and \fI\$_a\fR variables instead (see Unix.U). +.IP * +When doing a compile-link-execute test, always write it like this: +.Ex +\$\&cc \$\&ccflags \$\&ldflags try.c -o try \$\&libs +.Ef +because some systems require that linking flags be specified before +the compiled target (with the exception of trailing linking libraries). +.IP * +Issue important messages on file descriptor #4, by using '>&4' to redirect +output. Only those messages will appear when the \fB\-s\fR switch is +given to \fIConfigure\fR on the command line (silent mode). +.IP * +Always try to determine whether a feature is present in the most +specific way--don't say "if bsd" when you can grep libc. There +are many hybrid systems out there, and each feature should stand +or fall by itself. +.IP * +Always try to determine whether a feature is present in the most +general way, so that other packages can use your unit. +.IP * +When in doubt, set a default and ask. Don't assume anything. +.IP * +If you think the user is wrong, allow for the fact that he may be right. +For instance, he could be running Configure on a different system than +he is going to use the final product on. +.PP +Metaconfig reserves the following names in your directory, and if you use such +a name it may get clobbered or have other unforeseen effects: +.Ex +.MT/* +Configure +Wanted +Obsolete +configure +config_h.SH +confmagic.h +U/* +MANIFEST.new +.Ef +Additionally, Configure may clobber these names in the directory it is run in: +.Ex +UU/* +config.sh +config.h +.Ef +''' +''' O p t i o n s +''' +.SH OPTIONS +The following options are recognized by \fImetaconfig\fR: +.TP 15 +.B \-d +Turn on debug mode. Not really useful unless you are debugging \fImetaconfig\fR +itself. +.TP +.B \-h +Print help message and exit. +.TP +.B \-k +Keep temporary directory, so that you may examine the working files used +by \fImetaconfig\fR to build your \fIConfigure\fR script. Useful only when +debugging the units. +.TP +.B \-m +Assume lots of memory and swap space. This will speed up symbol lookup in +source files by a significant amount of time, at the expense of memory +consumption... +.TP +.B \-o +Map obsolete symbols on new ones. Use this switch if you still have some +obsolete symbols in your source code and do not want (or cannot) remove +them for now. The obsolete symbols are otherwise ignored, although that +will give you a warning from \fImetaconfig\fR. +.TP +.B \-s +Turn silent mode on. +.TP +.B \-t +Trace symbols as they are found. +.TP +.B \-v +Turn verbose mode on. +.TP +.B \-w +Assume Wanted file is up-to-date. This will skip the time and memory +consuming phase of source code scanning, looking for known symbols. +Use it only when you know your source file have not changed with respect +to the pool of \fImetaconfig\fR symbols used. +.TP +.B \-G +Also provide a GNU \fIconfigure\fR-like front end to the generated +.I Configure +script, to be included in the distribution as well. This is only +a wrapper around the +.I Configure +script naturally, but it lets people familiar with the GNU tool to +not be lost when facing a new distribution. +.TP +\fB\-L\fI dir\fR +Override default library location. Normally only useful for metaconfig +maintainers to locally use the units being developped instead of the +publicly available ones. The \fIdir\fR specified is the one containing the +units \fIU\fR directory. +.TP +.B \-M +Allow production of a \fIconfmagic.h\fR file to automagically remap some +well-known symbols to some other alternative, like \fIbcopy\fR() being +remapped transparently to \fImemcpy()\fR when not available. This option +is turned on automatically when a \fIconfmagic.h\fR file exists in the +top-level directory. Simply remove that file if you wish to disable this +option permanently. +.TP +.B \-V +Print version number and exit. +''' +''' T u t o r i a l +''' +.SH TUTORIAL +This (long) section is an introduction to \fImetaconfig\fR, in which we will +learn all the basics. If you already know how to use \fImetaconfig\fR, you +may safely skip to the next section. +''' +.SS Overview +.PP +Usually when you want to get some source package to compile on a given +platform you have to edit the main Makefile (assuming there is one!), +choose a C compiler, make sure you have the proper libraries, and then +fire the \fImake\fR command. If the package is reasonably well written, it +will compile (without a warning being an option :-). In itself, the last +sentence is a real performance, since given the variety of UNIX platforms +available today and the diversity of flavours, that means the author of the +package has gone into deep trouble to figure out the right choices given +some standard trial, guessing and messing around with system includes and +types. +.PP +However, despite all his talent, the author cannot possibly know that +some system has a broken system call, or that some sytem structure lacks +one otherwise standard field, or simply wheter a given include file exists +or not. And I'm not considering the implicit assumptions, like the type +returned by the \fImalloc()\fR function or the presence of the \fIrename()\fR +system call to name a few. But that knowledge is necessary to achieve real +portability. +.PP +Now let's not abuse ourselves. Using that information requires greater +skills, yet it can lead to more portable programs since it is then +written in a system-independant fashion and relies only on the fact that +some assumption is true or false on a particular system, each assumption +being unrelated with each other. That is to say, we do not say: We're on +a BSD system or we are on a USG system. That's too fuzzy anyway nowadays. +No, we want to say to the source code: this system does not have the +.I rename() +system call and \fImalloc()\fR returns a \fI(void *)\fR +value. +.PP +Metaconfig is a tool that will let you do just that, with the additional +benefit of not having to hand-edit the Makefile if all goes well. By +running \fImetaconfig\fR, you create a shell script named \fIConfigure\fR. +Lots of efforts have been devoted to the Configure script internals to ensure +it will run on 99% of the existing shells available as of this writing. +Configure will probe the target system, asking questions when in doubt and +gather all the answers in one single shell file, which in turn can be used +to automatically generate configured Makefiles and C include files. +.PP +There is only a limited (but quite large) set of symbols available for your +shell scripts and C programs. They are all documented in the Glossary file. +All you need to do is learn about them and start using them to address +portability and configuration problems. Then, by running \fImetaconfig\fR, +a suitable Configure script will be generated for your package. +.PP +The Configure script is built out several units (more than 300), each +unit being responsible for defining a small number of shell and/or C +symbols. Units are assembled together at the final stage, honoring +the dependency graph (one unit may need the result of several other +units which are then placed before in the script). +''' +.SS Symbols +.PP +Symbols are the most important thing in the \fImetaconfig\fR world. They +are the smallest recognized entity, usually a word, and can be granted +a value at the end of the Configure execution. For instance, the C +pre-processor symbol \fIHAS_RENAME\fR is a \fImetaconfig\fR symbol that is +guranteed to be defined if, and only if, the \fIrename()\fR system call +is present. Likewise, the \fI\$\&ranlib\fR shell variable will be set to +either ':' or 'ranlib' depending on whether the call to the \fIranlib\fR +program is needed to order a library file. How this works is not important +for now, what is important is to understand that those symbols are given +a \fIlife\fR (i.e. a value) upon \fIConfigure\fR execution. +.PP +Using symbols is relatively straightforward. In a C source file, you simply +use the symbol value, as a pre-processor directive (for instance an: \fI#ifdef +HAS_RENAME\fR) or, if the symbol value is a string, directly as you would use +a macro in C. And in a shell file or a Makefile, you may reference a shell +symbol directly. +.PP +Actually, I'm lying, because that's not completely as magic as the previous +paragraph could sound. In a C file, you need to include the Configure-produced +\fIconfig.h\fR file, and you must wrap your shell script or Makefile in a .SH +file and you may reference the shell symbol only in the variable +substitution part of that .SH file. More on this later. +''' +.SS Source Files +.PP +Symbols may only appear in a limited set of source files, because +\fImetaconfig\fR will only scan those when looking for known symbols, trying +to figure out which units it will need. You may use C symbols in C source +files, i.e. files with a \fI.c\fR, \fI.h\fR, \fI.y\fR or \fI.l\fR extension, +and shell symbols are looked for only in .SH files. +.PP +In order to get the value of a symbol, a C file needs to include the special +\fIconfig.h\fR file, which is produced by \fIConfigure\fR when C symbols +are present. And .SH files are run through a shell, producing a new file. +However, in the top section of the .SH file, the special \fIconfig.sh\fR +file (also produced by running \fIConfigure\fR) is sourced, and variable +substitutions apply. Actually, \fIconfig.h\fR is produced by running the +\fImetaconfig\fR-produced \fIconfig_h.SH\fR file, again using variable +substitution. So we're going to look at that a little more closely since +this is the heart of the whole \fIconfiguration\fR scheme... +''' +.SS Variable Substitution +.PP +There is shell construct called \fIhere document\fR which enables a +command to take an input specified within the script itself. That +input is interpreted by the shell as a double-quoted string or a +single quoted string depending on the form of the here document +specification. +.PP +To specify a here document, the '<<' token is used, followed by a single +identifier. From then on, the remaining script lines form the input for +the command, until the here document is found on a line by itself. +Shell substitution (including shell variable substitutions) is done +unless the identifier is surrounded by single quotes. For instance: +.Ex +var='first' +tar='second' +echo "--> first here document:" +cat < second here document:" +cat <<'EOM' +echo \$var +echo \$\&tar +EOM +echo "--> end." +.Ef +will produce, when run through a shell: +.Ex +--> first here document: +var='first' +tar='second' +--> second here document: +echo \$var +echo \$\&tar +--> end. +.Ef +The first here document has its content interpreted whilst the second +one is output as-is. Both are useful in a .SH script, as we are about to see. +''' +.SS Using .SH Scripts +.PP +A .SH script is usually produced by running the \fIMakeSH\fR script other +an existing file, transforming \fIfile\fR into a \fIfile.SH\fR. Let's take +a single example. Here is a little script (let's call it \fIintsize\fR) +which prints a single message, the size of the \fBint\fR datatype in C. +Unfortunately, it has the value hardwired in it, thusly: +.Ex +#!/bin/sh +intsize='4' +echo "On this machine, the int type is \$\&intsize bytes" +.Ef +Let's run \fImakeSH\fR on it by typing '\fImakeSH intsize\fR'. We get a single +\fIintsize.SH\fR file that looks like this: +.Ex +case \$CONFIG in +\&'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . \$TOP/config.sh + ;; +esac +: This forces SH files to create target in same directory as SH file. +: This is so that make depend always knows where to find SH derivatives. +case "\$0" in +*/*) cd \`expr X\$0 : 'X\\\\(.*\\\\)/'\` ;; +esac +echo "Extracting intsize (with variable substitutions)" +: This section of the file will have variable substitutions done on it. +: Move anything that needs config subs from !NO!SUBS! section to !GROK!THIS!. +: Protect any dollar signs and backticks that you do not want interpreted +: by putting a backslash in front. You may delete these comments. +\$spitshell >intsize <>intsize <<'!NO!SUBS!' +intsize='4' +echo "On this machine, the int type is \$\&intsize bytes" +\&!NO!SUBS! +chmod 755 intsize +\$\&eunicefix intsize +.Ef +The first part of this script (in the \fIcase\fR statement) is trying to +locate the \fIconfig.sh\fR file, in order to source it. The \fI\$CONFIG\fR +variable is false by default, by true when \fIconfig.sh\fR has been sourced +already (which would be the case if this file was executed from within +\fIConfigure\fR itself, but let's not confuse the issue here). +.PP +Once the \fIconfig.sh\fR file has been sources, all the shell symbols +defined by \fIConfigure\fR are set. We know reach a second case statement, +used to change the current directory should a path be used to +reach this program (for instance if we said '\fIsh ../scripts/intsize.SH\fR', +we would first run '\fIcd ../scripts\fR' before continuing). If you do not +understand this, don't worry about it. +.PP +Here comes the intersting stuff. This script uses the \fI\$spitshell\fR +variable, and it's not something we know about...yet. If you look through +the Glossary file, you will see that this is a variable known by +\fImetaconfig\fR. If you make this file part of your distribution (by including +it in the MANIFEST.new file, we'll come back to that later on) and run +\fImetaconfig\fR, then the \fIConfigure\fR script will determine a suitable +value for this variable and it will be set in \fIconfig.sh\fR. Same goes for +\fI\$startsh\fR and the mysterious \fI\$\&eunicefix\fR at the end. On a +reasonable system, the relevant part of \fIconfig.sh\fR would look like this: +.Ex +spitshell='cat' +startsh='#!/bin/sh' +eunicefix=':' +.Ef +Ah! We're getting there. Now it looks familiar. We're facing a single +\fIcat\fR command whose input comes from a variable-interpolated here +document and whose output is redirected to \fIintsize\fR. The value +will be that of \fI\$startsh\fR, i.e. '#!/bin/sh'. Fine so far. +.PP +Then we reach the second here document expansion, to get the remaining of +the script. This time, the here document symbol is surrounded by single +quotes so the contents will be appended verbatim to the \fIintsize\fR file. +So, by running '\fIsh intsize.SH\fR', we get the following output: +.Ex +Extracting intsize (with variable substitutions) +.Ef +and by looking at the produced intsize file, we see: +.Ex +#!/bin/sh +intsize='4' +echo "On this machine, the int type is \$\&intsize bytes" +.Ef +which is exactly what we had at the beginning. So far, it's a no-operation +procedure... But, how marvelous! It so happens (pure coincidence, trust me!), +that \fImetaconfig\fR knows about the \fI$\&intsize\fR shell symbol. By moving +the initialization of intsize to the variable-interpolated area of the .SH +script and initializing it with the \fIConfigure\fR-computed value, +and removing the now useless comments added by \fImakeSH\fR, we get: +.Ex +case \$CONFIG in +\&'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . \$TOP/config.sh + ;; +esac +case "\$0" in +*/*) cd \`expr X\$0 : 'X\\\\(.*\\\\)/'\` ;; +esac +echo "Extracting intsize (with variable substitutions)" +\$\&spitshell >intsize <>intsize <<'!NO!SUBS!' +echo "On this machine, the int type is \$\&intsize bytes" +\&!NO!SUBS! +chmod 755 intsize +\$\&eunicefix intsize +.Ef +Of course, running this script through a shell will again output the same +script. But if we run \fIConfigure\fR on a machine where an \fBint\fR is +stored as a 64 bits quantity, \fIconfig.sh\fR will set \fIintsize\fR to +8 and the \fIintsize\fR script will bear the right value and print: +.Ex +On this machine, the int type is 8 bytes +.Ef +which is correct. Congratulations! We have just configured a shell script!! +''' +.SS Producing config.h +.PP +We can now have a look at the way \fIconfig.h\fR is produced out of +\fIconfig_h.SH\fR. We know that running \fIConfigure\fR produces a +\fIconfig.sh\fR script (how exactly this is done is not strictly +relevant here, but for the curious, it's another here document +substitution within \fIConfigure\fR itself). The \fIconfig_h.SH\fR +itself is built by \fImetaconfig\fR at the same time \fIConfigure\fR +is, provided you make use of at least one C symbol within your sources. +.PP +Let's have a look at some random \fIconfig_h.SH\fR file to see what +really happens: +.Ex +case \$CONFIG in +\&'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . \$TOP/config.sh + ;; +esac +case "\$0" in +*/*) cd \`expr X\$0 : 'X\\\\(.*\\\\)/'\` ;; +esac +echo "Extracting config.h (with variable substitutions)" +sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' +/* + * This file was produced by running the config_h.SH script, which + * gets its values from config.sh, which is generally produced by + * running Configure. + * + * Feel free to modify any of this as the need arises. Note, however, + * that running config.h.SH again will wipe out any changes you've made. + * For a more permanent change edit config.sh and rerun config.h.SH. + */ + +/* Configuration time: \$\&cf_time + * Configured by: \$\&cf_by + * Target system: \$\&myuname + */ + +#ifndef _config_h_ +#define _config_h_ + +/* bcopy: + * This symbol is maped to memcpy if the bcopy() routine is not + * available to copy strings. + */ +/* HAS_BCOPY: + * This symbol is defined if the bcopy() routine is available to + * copy blocks of memory. You should not use this symbol under + * normal circumstances and use bcopy() directly instead, which + * will get mapped to memcpy() if bcopy is not available. + */ +#\$\&d_bcopy HAS_BCOPY /**/ +#ifndef HAS_BCOPY +#ifdef bcopy +#un-def bcopy +#endif +#define bcopy(s,d,l) memcpy((d),(s),(l)) /* mapped to memcpy */ +#endif + +/* HAS_DUP2: + * This symbol, if defined, indicates that the dup2 routine is + * available to duplicate file descriptors. + */ +#\$\&d_dup2 HAS_DUP2 /**/ + +/* I_STRING: + * This symbol, if defined, indicates to the C program that it should + * include (USG systems) instead of (BSD systems). + */ +#\$\&i_string I_STRING /**/ + +#endif +\&!GROK!THIS! +.Ef +At the top of the file, we recognize the standard .SH construct that we +have already studied in detail. Next comes the extraction of the file +itself, via a here document with variable substitutions. However, here +we do not use a plain \fIcat\fR but a \fIsed\fR instead, since we need +to do some further editing on-the-fly. We'll see why later on, so let's +forget about it right now. +.PP +We now reach the leading comment, and the file is tagged with the +configuration time, the target system, etc... (those variables coming +from the sourced \fIconfig.sh\fR file have been set up by \fIConfigure\fR). +That comment header is followed by a '#ifndef' protection to guard against +multiple inclusions of this file. Then comes the heart of the file... +.PP +It helps to know that \fI\$d_*\fR and \fI\$i_*\fR variables are set to +either '\fIdefine\fR' or '\fIundef\fR' by \fIConfigure\fR, depending on +wether a function or an include file is present on the system or not. +That means the: +.Ex +#\$\&d_bcopy HAS_BCOPY /**/ +.Ef +line will be expanded to either: +.Ex +#define HAS_BCOPY /**/ +.Ef +if the \$\&d_bcopy variable is set to 'define' or: +.Ex +#undef HAS_BCOPY /**/ +.Ef +if \$\&d_bcopy was set to 'undef', because the feature was not there. However, +that's not what gets written in the \fIconfig.h\fR file because of the +\fIsed\fR filter we have already seen, which will transform the second form +into: +.Ex +/*#define HAS_BCOPY /**/ +.Ef +That's a handy form for later editing of \fIconfig.h\fR because you only need +to remove the leading '/*' if you want to override \fIConfigure\fR's choice. +Likewise, you may add a single '/*' at the beginning of a '#define' line +to avoid the definition of a particular symbol. This is why each symbol +definition is protected by a trailing '/**/', to close the leading +comment opened by '/*' (comments are not nested in C). +.PP +Now transforming '#undef' into '/*#define' is nice, but if we want to actually +write a '#undef', we're stuck... unless we write it as '#un-def' and let +\fIsed\fR fix that to '#undef' while producing \fIconfig.h\fR, which is what +is actually done here. +.PP +The same kind of reasoning applies to those two lines: +.Ex +#\$\&d_dup2 HAS_DUP2 /**/ +#\$\&i_string I_STRING /**/ +.Ef +and assuming \fIconfig.sh\fR defines: +.Ex +d_dup2='define' +i_string='undef' +.Ef +we'll get in the produced \fIconfig.h\fR: +.Ex +#define HAS_DUP2 /**/ +/*#define I_STRING /**/ +.Ef +Clear as running water? Good! +.PP +Now it should be obvious that by including \fIconfig.h\fR in all your +C source files, you get to know what \fIConfigure\fR has guessed on +your system. In effect, by using those symbols, you are writing +configured C code, since \fImetaconfig\fR will know that you need +those symbols and will generate a suitable \fIconfig_h.SH\fR file as +well as all the necessary code in \fIConfigure\fR to compute a +proper value for them (by assigning values to associated shell variables). +''' +.SS Running Metaconfig +.PP +Let's focus on the \fImetaconfig\fR program for a while to understand how +it uses its units and your source code to produce all the needed configuration +files. If you intend to write new units, you should have a good understanding +of the whole scheme. +.PP +Assuming your MANIFEST.new file is properly set and lists all the source +files you wish to configure, and that you have run \fIpackint\fR in your +root source directory to create a \fI.package\fR file, you may run +\fImetaconfig\fR and you'll get the following: +.Ex +\$ metaconfig +Locating units... +Extracting dependency lists from 312 units... +Extracting filenames (*.[chyl] and *.SH) from MANIFEST.new... +Building a Wanted file... +.in +2 +Scanning .[chyl] files for symbols... +Scanning .SH files for symbols... +.in -2 +Computing optimal dependency graph... +.in +2 +Building private make file... +Determining loadable units... +Updating make file... +.in -2 +Determining the correct order for the units... +Creating Configure... +Done. +.Ef +The first phase looks for all the units files (ending with .U) in the public +directory first, then in your private one. If you copy a public file in your +private U directory (i.e. a directory named U at the top level of your package), +it will override the public version. Once it has a list of all the available +units, it parses them and extracts all the ?MAKE: lines to know about the +dependencies and the known shell symbols. It also focuses on the ?H: lines to +learn about the C symbols and which shell symbols needs to be computed to get +a proper value for that C symbol (so we have another level of dependencies +here). +.PP +Next, the proper filenames are extracted from the MANIFEST.new files and a +\fIWanted\fR file is built: that file lists all the C symbols and the shell +symbols needed for that package. We first scan the C-type files for C symbols, +then propagate the dependencies to their associated shell symbols (gathered +from ?H: lines). Next .SH files are scanned and finally all the shell symbols +are known. +.PP +A temporary Makefile is built and metaconfig tries to \fImake\fR all the shell +symbols to see what commands (listed on the second ?MAKE: lines) are +executed, and thus which units are really needed. Optional units not otherwise +required are removed and a second Makefile is generated. This time, we know +about all the units and their respective orders, optional units having been +removed and default values computed for their shell symbols. The \fIConfigure\fR +script can then be generated, along with \fIconfig_h.SH\fR. We're done. +''' +.SS Conventions +.PP +Proper conventions needs to be followed to make the whole process sound. +There is a case convention for units and a variable naming convention. +.PP +All units should have their first letter lower-cased, unless they are +special units. By special, we mean they do not really define new +shell variables that can be used by the user in his .SH files, but rather +units producing scripts or shell variables that are to be used internally +by the \fIConfigure\fR script. Typical examples are the \fIInit.U\fR +file which is the main variable initialization, or \fIMyread.U\fR which +produces the \fImyread\fR script used almost everywhere in \fIConfigure\fR +when a question is to be asked to the user. +.PP +Non-special units then subdivise in two distinct groups: units defining +variables associated to a C symbol and units defining shell variables of +their own. The first group is further divided in variables related to +include files (their name begin with \fIi_\fR) and variables related to +other definitions (name starting with \fId_\fR). The second group have +names standing for itself, for instance \fIcc.U\fR defines the \fI\$\&cc\fR +shell variable whose value is the C compiler to be used. +.PP +Special units sometimes reserve themselves some pre-defined variable and +return "results" in other well-known variables. For instance, the \fImyread\fR +script produced by Myread.U expects the prompt in \fI\$rp\fR, the default +answer in \fI\$dflt\fR and places the user answer in \fI\$ans\fR. This is +not documented in this manual page: you have to go and look at the unit +itself to understand which variables are used and how the unit is to be +used. +''' +.SS Using The Glossary +.PP +The Glossary file is automatically produced by the \fImakegloss\fR script, +which extracts the information from ?S:, ?C: and ?MAKE: lines and reformats +them into an alphabetically sorted glossary. +It is important to read the Glossary to know about the symbols you are +allowed to use. However, the Glossary will not tell you how to use them. +Usually, that's up to you. +.PP +One day, you will probably write your own units and you will know enough +about \fImetaconfig\fR to do so quickly and efficiently. However, never +forget to properly document your work in the ?S: and ?C: lines, or other +people will not be able to reuse it. Remember about the time where you +had only the Glossary and this manual page to get started. +''' +.SS Conclusion +.PP +Now that you know the \fImetaconfig\fR basics, you should read the +\fIDESCRIPTION\fR section, then skip to the \fIREFERENCE\fR section +to learn about all the gory details such as the allowed syntax for +unit control lines (lines starting with a '?') or the distinct MAKE +commands you are allowed to use. +.SH REFERENCE +This section documents the internals of \fImetaconfig\fR, basically the +unit syntax, the special units you should know about and the hint files. +''' +.SS General Unit Syntax +.PP +A metaconfig unit is divided into two distinct parts. The header section +(lines starting with '?') and a shell section (code to be included in +the \fIConfigure\fR script). It is possible to add '?X:' comments anywhere +within the unit, but the other '?' lines (also called \fIcontrol lines\fR) +have a strict ordering policy. +.PP +If a control line is too long, it +is possible to use a continuation by escaping the final new-line with a +backslash and continuing on the next line (which should then be indented by +spaces or tabs). +.PP +The following is a formal description of each of the control lines. Unless +stated otherwise, the order of this presentation is the order to be used +within the unit. +.TP 5 +?RCS: \fIfree text\fR +To be used for RCS comments, at the top of the unit. +.TP +?X: \fIany text\fR +General purpose comments. May appear anywhere in the unit but must be left +justfied. For RCS comments, please use the ?RCS: comment form. +.TP +?MAKE:\fIsymbol list\fR: \fIdependency list\fR [\fI+optional\fR] +This is the first dependency line. The first \fIsymbol list\fR should list +all the symbols built by this unit (i.e. whose value is computed by the +shell section of the unit). Symbols should be space separated. If a defined +symbol is for internal use only and should not appear in the generated +\fIconfig.sh\fR file, then it should be preceded by a '+' (not to be confused +with optional dependencies defined hereafter). +The second part of the list (after the middle ':') is the unit dependency. +It should list all the needed special units, as well as all the symbols +used by the shell implementation. If a symbol is nedded but its configuration +value is not critical, it can be preceded by a '+', in which case it is +called a conditional dependency: its corresponding unit will be loaded if, +and only if, that symbol is otherwise really wanted; otherwise the default +value will be used. +.TP +?MAKE:\fItab\fR \fIcommand\fR +There can be one or more command lines following the initial dependency lines. +Those commands will be executed when the unit is wanted to load them into +\fIConfigure\fR. See the paragraph about make commands for more information. +Note that the leading \fItab\fR character is required before the \fIcommand\fR. +.TP +?Y:\fIlayout\fR +Declare a layout directive for this unit. That directive may be one of the +strings \fItop\fR, \fIdefault\fR or \fIbottom\fR (case does not matter, +recommended style is to spell them out uppercased). If omitted, \fIdefault\fR +is assumed. +.sp +This directive is only required if you wish to force a unit at the top or +the bottom of the generated \fIConfigure\fR script, as unit dependencies +permit it. Important questions may thus be forced at the beginning. Within +the same layout class, units are sorted alphabetically with two special +cases for d_* and i_* units, forced respectively at the top and bottom of +their classes (but these should belong to the default class). +.sp +It you force at the top a unit whose dependencies require all the other +unit to precede it, you achieve nothing interesting. Therefore, that directive +should really be used to increase the priority of some interactive units +that do not depend on many other user-visible symbols, like path-related +questions. +.TP +?S:\fIsymbol_name\fR [(\fIobsolete symbol list\fR)]: +Introduces a shell symbol. This first line names the symbol, optionally +followed by a list enclosed between parenthesis and giving the obsolete +equivalent. Those obsolete symbols will be remapped to the new +\fIsymbol_name\fR if the \fB\-o\fR option is given to \fImetaconfig\fR. +.TP +?S:\fIany text, for Glossary\fR +Basically a comment describing the shell symbol, which will be extracted +by \fImakegloss\fR into the Glossary file. +.TP +?S:. +Closes the shell symbol comment. +.TP +?C:\fIsymbol_name\fR [~ \fIalias\fR] [(\fIobsolete symbol list\fR)]: +Introduces a new C symbol. The \fIalias\fR name is the name under which +the C symbol will be controlled, i.e. if the \fIalias\fR symbol is wanted, +then that C symbol will be written in the \fIconfig_h.SH\fR file. Usually, +the alias is just '%<' (stands for the unit's name) and there is also +a ?W: line mapping a C symbol to the \fIalias\fR. Also the relevant parts +of the ?H: lines are explicitely protected by a '?%<' condition. See +the symbol aliasing paragraph for more details. +The remaining of the line is the optional \fIobsolete symbol list\fR, +which lists old equivalents for the new \fIsymbol_name\fR. +.TP +?C:\fIany text, for Glossary and config_h.SH\fR +Basically a comment describing the C symbol, which will be extracted +by \fImakegloss\fR into the Glossary file and by \fImetaconfig\fR into +the \fIconfig_h.SH\fR file if the symbol is wanted (or if its alias is +wanted when symbol aliasing is used). +.TP +?C:. +Closes the C symbol comment. +.TP +?H:?\fIsymbol\fR:\fIconfig_h.SH stuff\fR +This is the general inclusion request into \fIconfig_h.SH\fR. The line is +only written when the guarding \fIsymbol\fR is really wanted. This general +form is needed when C symbol aliasing was used. Otherwise, if you use one +of the other "standard" forms, the guarding is automatically done by +\fImetaconfig\fR itself. +.TP +?H:#\fI\$d_var VAR\fR "\fI\$var\fR" +Conditionally defines the \fIVAR\fR C symbol into \fI\$var\fR when \fI$d_var\fR +is set to '\fIdefine\fR'. Implies a '?\fIVAR\fR:' guarding condition, and +\fImetaconfig\fR automatically links \fIVAR\fR to its two shell variable +dependencies (i.e. both \fI\$d_var\fR and \fI\$var\fR will be flagged as +\fIwanted\fR if \fIVAR\fR is used in C sources). +.TP +?H:#define \fIVAR\fR [\fIoptional text\fR] +Always defines the \fIVAR\fR C symbol to some value. Implies a '?\fIVAR\fR:' +guarding condition. An automatic shell dependency is made to the unit itself. +.TP +?H:#define \fIVAR(x,y,z)\fR \fI\$var\fR +Always defines the macro \fIVAR\fR to be the value of the \fI\$var\fR variable. +It is up to the unit to ensure \fI\$var\fR holds a sensible value. An +automatic dependency between the C macro \fIVAR\fR and the shell variable +is established, and the whole line is guarded by an implicit '?\fIVAR\fR:'. +.TP +?H:#\fI\$d_var VAR\fR +Conditionally defines \fIVAR\fR if \fI\$d_var\fR is set to '\fIdefine\fR'. +Implies a '?\fIVAR\fR:' guarding condition. An automatic shell dependency is +generated towards \fI\$d_war\fR. +.TP +?H:#define \fIVAR\fR "\fI\$var\fR" +Assigns a configured value to the \fIVAR\fR C symbol. Implies a '?\fIVAR\fR:' +gurading condition. An automatic shell dependency is generated to link +\fIVAR\fR and \fI\$var\fR. +.TP +?H:. +Closes the \fIconfig_h.SH\fR inclusion requests. +.TP +?M:\fIC symbol\fR: \fIC dependencies\fR +Introduces magic definition concerning the C symbol, for \fIconfmagic.h\fR, +and defines the guarding symbol for the remaining ?M: definitions. This +line silently implies '?W:%<:\fIC symbol\fR', i.e. the unit will be loaded +into Configure if the C symbol appears within the C sources, whether magic +is used or not. The C dependencies are activated when magic is used, in order +to force their definition in \fIconfig_h.SH\fR. However, if magic is \fBnot\fR +used but the C symbol appears in the source without the needed C dependencies, +you will be warned every time the Wanted file is built, since it may be a +portability issue (and also because the unit is unconditionally loaded into +Configure whenever the C symbol is used, regardless of the other ?C: lines +from the unit). +.TP +?M:\fIcpp defs\fR +Defines the magic cpp mapping to be introduced in confmagic.h whenever the +concerned symbol is used. There is an implicit '?\fIsym\fR' guarding where +\fIsym\fR is the symbol name defined by the leading ?M: line. +.TP +?M:. +Closes the \fIconfmagic.h\fR inclusion request. +.TP +?W:\fIshell symbol list\fR:\fIC symbol list\fR +Ties up the destiny of the shell symbols with that of the C symbols: if any +of the C symbols listed is wanted, then all the shell symbols are marked +as wanted. Useful to force inclusion of a unit (shell symbol list set to +\&'%<') when the presence of some C symbol is detected. The shell symbol list +may be left empty, to benefit from the side effect of C symbol location +within the builtin pre-processor (symbol being \fIdefined\fR for that +pre-processor if located in the source). To look for patterns with a space +in them, you need to quote the C symbols within simple quotes, as in +\&'struct timezone'. +.TP +?V:\fIread-only symbols\fR:\fIread-write symbols\fR +This is a \fImetalint\fR hint and should be used only in special units +exporting some shell variables. The variables before the middle ':' +are exported read-only (changing them will issue a warning), while +other symbols may be freely read and changed. +.TP +?F:\fIfiles created\fR +This line serves two purposes: it is a \fImetalint\fR hint, and also +a placeholder for future \fIjmake\fR use. It must list three kind of files: +the temporary one which are created for a test, the private UU ones created +in the UU directory for later perusal, and the public ones left in the +root directory of the package. Temporary files must be listed with a +preceding '!' character (meaning "no! they're not re-used later!"), private +UU files should be preceded by a './' (meaning: to use them, say \fI./file\fR, +not just \fIfile\fR), and public ones should be named as-is. +.TP +?T:\fIshell temporaries\fR +Another \fImetalint\fR hint. This line lists all the shell variables used +as temporaries within the shell section of this unit. +.TP +?D:\fIsymbol\fR='\fIvalue\fR' +Initialization value for symbols used as conditional dependencies. If no +?D: line is found, then a null value is used instead. The \fImetalint\fR +program will warn you if a symbol is used at least once as a conditional +dependency and does not have a proper ?D: initialization. It's a good +practice to add those lines even for a null initialization since it +emphasizes on the possibly optional nature of a symbol. +.TP +?O:\fIany message you want\fR +This directive indicates that this unit is obsolete as a whole. Whenever +usage of any of its symbols is made (or indirect usage via dependencies), +the message is output on the screen (on stderr). You can put one ore more +lines, in which case each line will be printed, in order. +.TP +?LINT:\fImetalint hints\fR +See the \fImetalint\fR manual page for an explaination of the distinct +hints that can be used. +.TP +?INIT:\fIinitialization code\fR +The initialization code specified by this line will be loaded at the top +of the \fIConfigure\fR script provided the unit is needed. +''' +.SS C Symbol Aliasing +.PP +Sometimes it is not possible to rely on \fImetaconfig\fR's own default +selection for \fIconfig_h.SH\fR comments and C symbol definition. That's +where aliasing comes into play. Since it's rather tricky to explain, we'll +study an example to understand the underlying mechanism. +.PP +The d_const.U unit tries to determine whether or not your C compiler +known about the \fIconst\fR keyword. If it doesn't we want to remap +that keyword to a null string, in order to let the program compile. +Moreover, we want to automatically trigger the test when the \fIconst\fR +word is used. +.PP +Here are the relevant parts of the d_const.U unit: +.Ex +?MAKE:d_const: cat cc ccflags Setvar +?MAKE: -pick add \$@ %< +?S:d_const: +?S: This variable conditionally defines the HASCONST symbol, which +?S: indicates to the C program that this C compiler knows about the +?S: const type. +?S:. +?C:HASCONST ~ %<: +?C: This symbol, if defined, indicates that this C compiler knows about +?C: the const type. There is no need to actually test for that symbol +?C: within your programs. The mere use of the "const" keyword will +?C: trigger the necessary tests. +?C:. +?H:?%<:#$\&d_const HASCONST /**/ +?H:?%<:#ifndef HASCONST +?H:?%<:#define const +?H:?%<:#endif +?H:. +?W:%<:const +?LINT:set d_const +?LINT:known const +: check for const keyword +echo " " +echo 'Checking to see if your C compiler knows about "const"...' >&4 +$cat >const.c <<'EOCP' +main() +{ + const char *foo; +} +EOCP +if $\&cc -c $\&ccflags const.c >/dev/null 2>&1 ; then + val="$\&define" + echo "Yup, it does." +else + val="$\&undef" + echo "Nope, it doesn't." +fi +set d_const +eval $\&setvar +.Ef +First we notice the use of a ?W: line, which basically says: "This unit +is wanted when the \fIconst\fR keyword is used in a C file.". In order +to conditionally remap \fIconst\fR to a null string in \fIconfig.h\fR, +I chose to conditionally define \fIHASCONST\fR via \fI\$\&d_const\fR. +.PP +However, this raises a problem, because the \fIHASCONST\fR symbol is not +going to be used in the sources, only the \fIconst\fR token is. And the +?H: line defining \fIHASCONST\fR is implicitely guarded by '?HASCONST'. +Therefore, we must add the explicit '?%<' constraint to tell \fImetaconfig\fR +that those lines should be included in \fIconfig_h.SH\fR whenever the +\&'%<' symbol gets wanted (%< refers to the unit's name, here \fId_const\fR). +.PP +That's almost perfect, because the ?W: line will want \fId_const\fR whenever +\fIconst\fR is used, then the ?H: lines will get included in the +\fIconfig_h.SH\fR file. However, the leading comment (?C: lines) attached to +\fIHASCONST\fR is itself also guarded via \fIHASCONST\fR, i.e. it has an +implicit '?HASCONST' constraint. Hence the need for \fIaliasing\fR the +\fIHASCONST\fR symbol to '%<'. +.PP +The remaining part of the unit (the shell part) is really straightforward. +It simply tries to compile a sample C program using the \fIconst\fR keyword. +If it can, then it will define \fI\$\&d_const\fR via the \fI\$\&setvar\fR +fonction (defined by the \fISetvar.U\fR unit). See the paragraph about +special units for more details. +''' +.SS Make Commands +.PP +On the ?MAKE: command line, you may write a shell command to be executed as-is +or a special \fI-pick\fR command which is trapped by \fImetaconfig\fR and +parsed to see what should be done. The leading '-' is only there to prevent +\fImake\fR from failing when the command returns a non-zero status -- it's +not really needed since we use '\fImake -n\fR' to resolve the dependencies, +but I advise you to keep it in case it becomes mandatory in future versions. +The syntax of the \fIpick\fR command is: +.Ex +-pick \fIcmd\fR \$@ \fItarget_file\fR +.Ef +where \fI\$@\fR is the standard macro within Makefiles standing for the current +target (the name of the unit being built, with the final .U extension stripped). +The \fIcmd\fR part is the actual \fImetaconfig\fR command to be run, and the +\fItarget_file\fR is yet another parameter, whose interpretation depends on +the \fIcmd\fR itself. It also has its final .U extension stripped and normally +refers to a unit file, unless it start with './' in which case it references +one of the \fImetaconfig\fR control files in the '\fI.MT\fR directory. +.PP +The available commands are: +.TP 10 +add +Adds the \fItarget_file\fR to \fIConfigure\fR. +.TP +add.Config_sh +Fills in that part of \fIConfigure\fR producing the \fIconfig.sh\fR file. +Only used variables are added, conditional ones (from conditional dependencies) +are skipped. +.TP +add.Null +Adds the section initializing all the shell variables used to an empty string. +.TP +c_h_weed +Produces the \fIconfig_h.SH\fR file. Only the necessary lines are printed. +.TP +cm_h_weed +Produces the \fIconfmagic.h\fR file. Only the necessary lines are printed. +This command is only enabled when the \fB\-M\fR switch is given, or when a +\fIconfmagic.h\fR file already exists. +.TP +close.Config_sh +Adds the final 'EOT' symbol on a line by itself to end the here document +construct producing the \fIconfig.sh\fR file. +.TP +prepend +Prepends the content of the target to the \fItarget_file\fR if that file is +not empty. +.TP +weed +Adds the unit to \fIConfigure\fR like the \fIadd\fR command, but make some +additional tests to remove the '?\fIsymbol\fR' and '%\fIsymbol\fR' lines +from the \fItarget_file\fR if the symbol is not wanted or conditionally +wanted. The '%' form is only used internally by \fImetaconfig\fR while +producing its own .U files in the '\fI.MT\fR' directory. +.TP +wipe +Same as \fIadd\fR really, but performs an additional macro substitution. +The available macros are described in the \fIHardwired Macros\fR paragraph. +.PP +As a side note, \fImetaconfig\fR generates a \fI-cond\fR command internally +to deal with conditional dependencies. You should not use it by yourself, +but you will see it if scanning the generated \fIMakefile\fR in the \fI.MT\fR +directory. +''' +.SS Hardwired Macros +.PP +The following macros are recognized by the \fIwipe\fR command and subsituted +before inclusion in \fIConfigure\fR: +.TP 10 + +The base revision number of the package, derived from \fI.package\fR. +.TP + +The current date. +.TP + +The e-mail address of the maintainer of this package, derived from +your \fI.package\fR. +.TP + +The name of the package, as derived from your \fI.package\fR file. +.TP + +The patch level of the \fImetaconfig\fR program. +.TP + +The version number of the \fImetaconfig\fR program. +.PP +Those macros are mainly used to identify the \fImetaconfig\fR version that +generated a particular \fIConfigure\fR script and for which package it +was done. The e-mail address of the maintainer is hardwired in the leading +instructions that \fIConfigure\fR prints when starting. +.PP +Recent \fImetaconfig\fR versions understand a much more general syntax +of the form: +.Ex + <\$variable> +.Ef +which is replaced at Configure-generation time by the value of \fIvariable\fR +taken from your \fI.package\fR file. Eventually, the old hardwired macro +format will disappear, and <\$baserev> will replace in all the +supplied units. +''' +.SS Special Units +.PP +The following special units are used to factorize code and provide higher +level functionalities. They either produce a shell script that can be +sourced or a shell variable that can be \fIeval\fR'ed. Parameter passing +is done via well-know variables, either named or anonymous like \$1, \$2, +etc... (which can be easily set via the shell \fIset\fR operator). +When \fIConfigure\fR executes, it creates and goes into a \fIUU\fR directory, +so every produced script lies in there and does not interfere with the +files from your package. +.PP +Here are the sepcial units that you should know about, and the way to use +them. +.TP 5 +Cppsym.U +This unit produces a shell script called \fICppsym\fR, which can be used +to determine whether any symbol in a list is defined by the C preprocessor +or C compiler you have specified. +It can determine the status of any symbol, though the symbols in \fI$al\fR +(attribute list) are more easily determined. +.TP +Csym.U +This sets the \$csym shell variable, used internally by \fIConfigure\fR to +check whether a given C symbol is defined or not. A typical use is: +.Ex +set symbol result [-fva] [previous] +eval \$\&csym +.Ef +That will set the \fIresult\fR variable to 'true' if the +function [-f], +variable [-v] or +array [-a] +is defined, 'false' otherwise. If a previous value is given and the \fB\-r\fR +switch was provided to \fIConfigure\fR (see the \fIConfigure Options\fR +paragraph), then that value is re-used without questioning. +.sp +The way this computation is done depends on the answer the user gives to +the question \fIConfigure\fR will ask about whether it should perform an +.I nm +extraction or not. If the exctraction was performed, the unit simply looks +through the symbol list, otherwise it performs a compile-link test, unless +.B \-r +was given to reuse the previously computed value, naturally... +.TP +End.U +By copying this unit into your private \fIU\fR directory and appending +dependencies on the ?MAKE: line, you can force a given unit to be loaded +into \fIConfigure\fR even if it is not otherwise wanted. Some units may +only be forced into \fIConfigure\fR that way. +.TP +Filexp.U +This unit produces a shell script \fIfilexp\fR which will expand filenames +beginning with tildes. A typical use is: +.Ex +exp_name=\`./filexp \$name\` +.Ef +to assign the expanded file name in \fIexp_name\fR. +.TP +Findhdr.U +This unit produces a \fIfindhdr\fR script which is used to locate the +header files in \fI$\&usrinc\fR or other stranger places using cpp capabilities. +The script is given an include file base name like 'stdio.h' or 'sys/file.h' +and it returns the full path of the inlcude file and a zero status if found, +or an empty string and a non-zero status if the file could not be located. +.TP +Getfile.U +This unit produces a bit of shell code that must be sourced in order to get +a file name and make some sanity checks. Optionally, a ~name expansion is +performed. +.sp +To use this unit, \fI\$rp\fR and \fI\$dflt\fR must hold the question and the +default answer, which will be passed as-is to the \fImyread\fR script +(see forthcoming \fIMyread.U\fR). The \fI\$fn\fR variable controls the +operation and the result is returned into \fI\$ans\fR. +.sp +To locate a file or directory, put 'f' or 'd' in \fI$fn\fR. If a '~' appears, +then ~name substitution is allowed. If a '/' appears, only absolute pathnames +are accepted and ~name subsitutions are always expanded before returning. +If '+' is specified, existence checks are skipped. If 'n' +appears within \fI\$fn\fR, then the user is allowed to answer 'none'. +.sp +Usually, unless you asked for portability, ~name substitution occurs when +requested. However, there are some times you wish to bypass portability and +force the substitution. You may use the 'e' letter (expand) to do that. +.sp +If the special 'l' (locate) type is used, then the \fI\$fn\fR variable must +end with a ':', followed by a file basename. If the answer is a directory, +the file basename will be appended before testing for file existence. This +is useful in locate-style questions like this: +.Ex +dflt='~news/lib' +: no need to specify 'd' or 'f' when 'l' is used +fn='l~:active' +rp='Where is the active file?' +\&. ./getfile +active="\$ans" +.Ef +.sp +Additionally, the 'p' (path) letter may be used in conjunction with 'l' to +tell \fIgetfile\fR that an answer without a '/' in it should be accepted, +assuming that it will be in everyone's PATH at the time this value will be +needed. +.sp +Also useful is the possibility to specify a list of answers that should be +accepted verbatim, bypassing all the checks. This list must be within +parenthesis and items must be comma separated, with no interleaving spaces. +Don't forget to quote the resulting string since parenthesis are meaningful +to the shell. For instance: +.Ex +dflt='/bin/install' +fn='/fe~(install,./install)' +rp='Use which install program?' +\&. ./getfile +install="\$ans" +.Ef +would let the user only specify fully qualified paths referring to existing +files, but still allow the special "install" and "./install" answers as-is +(assuming of course something will deal with them specially later on in the +chain since they do not conform with the general expected frame). +.sp +If the answer to the question is 'none', then the existence checks are skipped +and the empty string is returned. Note that since \fIgetfile\fR calls +\fImyread\fR internally, all the features available with \fImyread\fR apply +here to. +.sp +If a completely expanded value is needed (for instance in a Makefile), you +may use the \fI\$ansexp\fR variable which is always set up properly +by \fIgetfile\fR +as the expanded version of \fI\$ans\fR. Of course, it will not expand ~name if +you did not allow that in the first place in the \fI\$fn\fR variable. +.TP +Inhdr.U +This unit produces the \fI\$inhdr\fR shell variable, used internally by +\fIConfigure\fR to check whether a set of headers exist or not. A typical +use is: +.Ex +set header i_header [ header2 i_header2 ... ] +eval \$\&inhdr +.Ef +That will print a message, saying whether the header was found or not and +set the \fIi_header\fR variable accordingly. If more than one header +is specified and the first header is not found, we try the next one, until +the list is empty or one is found. +.TP +Inlibc.U +This unit produces the \fI\$inlibc\fR shell variable, used internally +by \fIConfigure\fR to check whether a given C function is defined or not. +A typical use is: +.Ex +set function d_func +eval \$\&inlibc +.Ef +That will print a message, saying whether the function was found or not +and set \fI\$d_func\fR accordingly. Internally, it used the \fI\$\&csym\fR +routine. +.TP +Loc.U +This important unit produces a shell script \fIloc\fR which can be used +to find out where in a list of directories a given file lies. The first +argument specifies the file to be located, the second argument is what +will be returned if the search fails, and the reamining arguments are a +list of directories where the file is to be searched. For instance: +.Ex +dflt=\`./loc sendmail.cf X /usr/lib /var/adm/sendmail /lib\` +.Ef +would set \fI\$dflt\fR to \fIX\fR if no \fIsendmail.cf\fR file was found +under the listed directories, or something like \fI/usr/lib/sendmail.cf\fR +on some systems. See also \fIGetfile.U\fR. +.TP +MailAuthor.U +This unit needs to be included on the ?MAKE: line of your own private End.U +to make it into \fIConfigure\fR. It offers the user to register himself to +the author, optionally being notified when new patches arrive or receiving +them automatically when issued. You need to install \fImailagent\fR to do +this (at least version 3.0). +.TP +MailList.U +This unit needs to be included on the ?MAKE: line of your own private End.U +to make it into \fIConfigure\fR. It offers the user to subscribe or +unsubscribe to a mailing list where discussion related to the package are +taking place. You need to run \fIpackinit\fR and answer the mailing list +related questions to set up the proper variables in your \fI.package\fR +before this unit may become operational. +.TP +Myinit.U +Copy this unit into your private \fIU\fR directory to add your own default +values to some internal variables. This unit is loaded into \fIConfigure\fR +after all the default initializations have been done. +.TP +Myread.U +This unit produces the \fImyread\fR shell script that must be sourced in +order to do a read. It allows shell escapes, default assignment and +parameter evaluation, as documented in the Instruct.U unit. It also allows +dynamic setting of the \fB\-d\fR option, which will be used for the remaining +of the script execution. +.sp +To use this unit, \fI\$rp\fR must hold the question and \fI\$dflt\fR should +contain the default answer. The question will be printed by the script +itself, and the result is returned in the \fI\$ans\fR variable. +.sp +Here is a typical usage: +.Ex +dflt='y' +rp='Question?' +\&. ./myread +value="\$ans" +.Ef +See the unit itself for more information. +.TP +Oldconfig.U +This unit must be part of your dependency ?MAKE: line when some of your +units tries to reuse an old symbol value. This unit is responsible for +getting the old answers from \fIconfig.sh\fR or providing useful hints +when running on a given platform for the first time. See the \fIConfigure +Hints\fR paragraph for more information about hints. +.TP +Prefixit.U +The purpose of this unit is to detect changes in the installation prefix +directory to recompute automatically suitable defaults from previous answers. +It relies on the value of the \fI\$oldprefix\fR variable which holds the +previous prefix directory when it changed, and is empty otherwise. For instance, +if the prefix was changed from \fI/opt\fR to \fI/usr/local\fR, then the +previous binary installation directory will be changed from \fI/opt/bin\fR +to \fI/usr/local/bin\fR, or will remain unchanged if it was, say, \fI/bin\fR. +.sp +You need to call \fBset\fR before issuing an \fBeval\fR on \fI\$prefixit\fR, +such as: +.Ex +set dflt var [dir] +eval \$prefixit +.Ef +which would set \fI\$dflt\fR to \fI\$var\fR or \fI\$prefix/dir\fR depending +on whether the prefix remained the same or not. If \fIdir\fR is the +string \fInone\fR, a single space value in \fI\$dflt\fR is kept as-is, even +when the prefix changes. If \fIdir\fR is omitted, then \fI\$dflt\fR is set +to an empty string if the prefix changed, to \fI\$var\fR otherwise. +.TP +Prefixup.U +The intent of thit unit is similar to that of Prefixit.U, i.e. it helps +fixing the default string to accomodate prefix changes. However, the shell +variable \fI\$prefixup\fR, when evaluated, will only restore ~name expansions, +should prefix use such an escape mechanism. Use it as: +.Ex +set dflt +eval \$prefixup +.Ef +before prompting via \fIgetfile\fR for instance. If the prefix does not +make use of ~name expanstion, then the above will be a no-op on the \fI$dflt\fR +variable, naturally. +.TP +Typedef.U +This unit produces the \fI\$typedef\fR shell variable, used internally by +\fIConfigure\fR to check whether a typedef exists or not. A typical +use is: +.Ex +set typedef val_t default [ includes ] +eval \$\&typedef +.Ef +This will set the variable \fIval_t\fR to the value of \fIdefault\fR if the +typedef was not found among the listed include files, or to \fItypedef\fR +if found. If no include files are specified, the unit looks +in \fI\fR only. If you specifiy some includes, only those are +looked at. +.TP +Unix.U +The purpose of this unit is to define some of the most common UNIX-isms +via variables which can be altered from the command line or via proper +hint files. In particular, \fI\$_exe\fR, \fI\$_o\fR and \fI\$_a\fR +are set. All the units should refer to \fI\$_o\fR and not to \fI.o\fR +directly. The '.' is part of these variables. +.TP +Setvar.U +This unit produces the \fI$setvar\fR variable, which is used internally +by \fIConfigure\fR to set a \fIdefine\fR/\fRundef\fR value to a given symbol, +emitting a warning when it suddenly changes from a previous value. For instance: +.Ex +val="\$\&define" +set d_variable +eval \$\&setvar +.Ef +If the previous \fI\$d_variable\fR value was non-null and \fI\$val\fR is +different, a "whoa" warning is issued. +.TP +Whoa.U +This unit produces the \fIwhoa\fR script, which emits a warning when the +\fIvalue\fR in variable whose name is \fI\$var\fR is not the same as +its old previous value held in \fI\$was\fR. Upon return, \fI\$td\fR and +\fI\$tu\fR hold the proper value to \fIdefine\fR or \fIundef\fR the variable. +See examples in \fIInlibc.U\fR. +''' +.SS Builtin Pre-processor +.PP +Each unit to be included in \fIConfigure\fR is ran through a built-in +pre-processor. Pre-processor statements are introduced by the '@' character +('#' is the shell comment character). It functions merely as the C +pre-processor does but allows for shell and perl escapes. Here are the +available functions: +.TP 10 +@if \fIexpression\fR +If \fIexpression\fR is true, continue loading code until @end, @elsif or @else. +.TP +@elsif \fIexpression\fR +Alternative choice. If \fIexpression\fR is true, continue loading code until +@end, another @elsif or @else. +.TP +@else +Default code to be loaded if the @if \fIexpression\fR was false and none +of the optional @elsif matched. Load until @end. +.TP +@end +Close the conditional loading statement opened by @if. +.TP +@define \fIsymbol\fR +Tells the pre-processor that \fIsymbol\fR is defined from now on. +.PP +The conditional \fIexpression\fR can include symbol names (value is +true if symbol is wanted or defined via \fI@define\fR or shell/perl +escapes. Those atoms can be combined using the traditional boolean +operators '!' for negation, '&&' for logical and, and '||' for logical +or. +.PP +Text enclosed within single brackets is a shell test, while text between +double brakets is a perl test. Namely the expressions: +.Ex +{ \fIshell text\fR } +{{ \fIperl text\fR }} +.Ef +are translated into: +.Ex +if \fIshell text\fR >/dev/null 2>&1; then exit 0; else exit 1; fi +if (\fIperl text\fR) {exit 0;} else {exit 1;} +.Ef +and the exit status is used in the standard way to get a boolean value, +i.e. 0 is true and everything else is false. Note that only simple +conditions can be expressed in perl, until some complex code can be +loaded within \fImetaconfig\fR and executed. +.PP +The built-in pre-processor can be used to finely tune some units +(see \fId_gethname.U\fR for a complex example) depending on the symbols +actually used by the program or the files present in the distribution. +For instance, the \fIOldconfig.U\fR uses a test like: +.Ex +@if {test -d ../hints} +.Ef +and \fIConfigure\fR will contain hint-dependent code only if there is +a \fIhints\fR directory in the package's top level directory. Note that +tests are ran from within the '\fI.MT\fR' directory, hence the needed +\&'../' in the test. +.PP +The pre-processor can also be used to avoid putting useless code when +a symbol is not defined. Units defining more than one symbol can be +protected that way (since the unit is loaded as a whole) by gathering +symbol-dependent code within an @if/@end pair. For instance: +.Ex +@if I_TIME || I_SYS_TIME || I_SYS_TIME_KERNEL +need_time_h='true' +@else +need_time_h='false' +@end +.Ef +will test whether the source code makes any use of one of the three +symbols that control the \fItime.h\fR or \fIsys/time.h\fR inclusion +and define the shell symbol accordingly. That gives \fIConfigure\fR +a feedback on what the sources need and avoid the drawback of having +fixed frozen units. +.PP +Via the '?W:' lines, you can get intersting combinations. For instance, +the \fIi_time.U\fR unit needs to know whether the C sources make any +use of the \fIstruct timezone\fR type. Therefore, the line: +.Ex +?W::timezone +.Ef +is used for its side-effect of defining the symbol \fItimezone\fR for +the pre-processor. The unit code can then say: +.Ex +@if timezone +for s_timezone in '-DS_TIMEZONE' ''; do +@else +s_timezone='' +@end + +\&... code using s_timezone ... + +@if timezone +done +@end +.Ef +and have an extra loop trying two successive values for the \fIs_timezone\fR +variable, but only if needed. +''' +.SS Obsolete Symbols +.PP +Obsolete symbols are preserved to ease the transition with older +.I metaconfig +units. Unless the \fB\-o\fR switch is passed to \fImetaconfig\fR they will +be ignored. However, an \fIObsolete\fR file will be generated, telling you +which files are making use of those obsolete symbols and what are the new +symbols to be used. +.PP +The lifetime for obsolete symbols is one full revision, i.e. they will +be removed when the next base revision is issued (patch upgrades do not +count of course). Therefore, it is wise to translate your sources and +start using the new symbols as soon as possible. +''' +.SS Configure Hints +.PP +It may happen that the internal configuration logic makes the wrong choices. +For instance, on some platform, the \fIvfork()\fR system call is present but +broken, so it should not be used. It is not possible to include that knowledge +in the units themselves, because that might be a temporary problem which the +vendor will eventually fix, or something that was introduced by a new OS +upgrade. +.PP +Anyway, for all those tiny little problems that are too system-specific, +\fImetaconfig\fR provides hint files support. To use it, you need to create +a \fIhints\fR directory in the package's top level directory, and have it +when you run \fImetaconfig\fR. That will load the hint-related part from +\fIOldconfig.U\fR. +.PP +From then on, you may pre-set some of the shell variables \fIConfigure\fR uses +in an OS-specific .sh file. There is code in \fIOldconfig.U\fR that tries +to guess which hint files are needed by computing a standard name based +on the system OS name, the kernel name, the release number, etc... Since +this information is likely to change rapidly, I'm not documenting it here. +You have to reverse engineer the code from \fIOldconfig.U\fR. +.PP +When you first release your package, your hints file directory should be empty. +If the users of your package complain that they have problem with +\fIConfigure\fR defaults on a particular system, you have to see whether this +is a platform-specific problem or a general one. In the former case, it's +time to introduce a new hint file, while in the latter, the corresponding +unit should be revised. +.PP +For instance, SGI systems are known to have a broken \fIvfork()\fR system +call, as of this writing. And the corresponding hint file name is \fIsgi.sh\fR. +So all you need to do is create a \fIhints/sgi.sh\fR file in which you write: +.Ex +d_vfork="\$\&define" +.Ef +which will always remap \fIvfork\fR on \fIfork\fR (see \fId_vfork.U\fR). When +running on SGI systems for the first time, \fIConfigure\fR will detect that +there is an \fIhints/sgi.sh\fR file, and that we are on an IRIX machine +(the kernel name is often /irix), therefore it will propose \fIsgi\fR as a +possible hint. +If the user accepts it, and since the \fI\$\&d_vfork\fR value is modified +via the \fI$\&setvar\fR call, a \fIwhoa!\fR will be emitted to warn that we +are about to override the value computed by \fIConfigure\fR. +.PP +Note that you don't have to provide \fIall\fR the hints known by +\fIOldconfig.U\fR. If a hint file is missing, it will not be proposed as a +possible choice. The heuristic tests ran to compute the possible hint +candidates are flaky. If you have new values or different tests, please send +them to me... +''' +.SS Overriding Choices +.PP +If you create a \fIconfig.over\fR file in the top level directory, +\fIConfigure\fR will ask you if you wish to load it to override the default +values. This is done prior creation of the \fIconfig.sh\fR file, so it gives +you a chance to patch the values stored in there. +.PP +This is distinct from the hints approach in that it is a local file, which +the user is free to create for his own usage. You should not provide such +a file yourself, but let the user know about this possibility. +''' +.SS Configure Options +.PP +The \fIConfigure\fR script may be called with some options specified on the +command line, to slightly modify its behaviour. Here are the allowed options: +.TP 10 +.B \-d +Use defaults for all answers. +.TP +.B \-e +Go on without questioning past the production of \fIconfig.sh\fR. +.TP +.B \-f \fIfile\fR +Use the specified file as a default configuration. If this switch is not +used, the configuration is taken from \fIconfig.sh\fR, when present. +.TP +.B \-h +Print help message and exit. +.TP +.B \-r +Reuse C symbols value if possible. This will skip the costly \fInm\fR +symbol extraction. If used the first time (with no previous configuration +file), \fIConfigure\fR will try to compile and link a small program in order +to know about the presence of a symbol, or absence thereof. +.TP +.B \-s +Silent mode. Only strings printed on file descriptor #4 will be seen on +the screen (that's the important messages). It's not possible to completely +turn off any output, but you may use '\fIConfigure -ders >/dev/null 2>&1\fR' +to have a full batch run with no output and no user interaction required. +.TP +.B \-D\fI symbol=value\fR +Pre-defines \fIsymbol\fR to bear the specified \fIvalue\fR. It is also +possible to use '\fB-D\fI symbol\fR' which will use a default value +of 'define'. +.TP +.B \-E +Stop at the end of the configuration questions, after having produced +a \fIconfig.sh\fR. This will not perform any '\fImake depend\fR' or .SH files +extraction. +.TP +.B \-K +Knowledgeable user. When you use this option, you know what you are +doing and therefore the \fIconfig.sh\fR file will always be handled as if it +was intended to be re-used, even though it might have been generated on +an alien system. It also prevents aborting when \fIConfigure\fR detects +an unusable C compiler or a wrong set of C flags. +Further shortcuts might be turned on by this option as well in the future. +This option is documented in the \fIConfigure\fR usage message, to remind +us about its existence, but the given description is hoped to be cryptic +enough. :-) +.TP +.B \-O +Allow values specified via a \fB\-D\fR or \fB\-U\fR to override settings from +any loaded configuration file. This is not the default behaviour since the +overriding will not be propagated to variables derived from those you are +presently altering. Naturally, without \fB-O\fR, the setting is only +done when no configuration file is loaded, which is safe since derivative +variables have not been computed yet... +.TP +.B \-S +Perform variable substitution on all the .SH files. You can combine it with the +\fB\-f\fR switch to propagate any configuration you like. +.TP +.B \-U\fI symbol=\fR +Pre-sets \fIsymbol\fR to bear an empty value. It is also +possible to use '\fB-U\fI symbol\fR' which will set \fIsymbol\fR to 'undef'. +.TP +.B \-V +Print the version number of the \fImetaconfig\fR that generated this +.I Configure +script and exit. +''' +.SS Running Environment +Upon starting, \fIConfigure\fR creates a local \fIUU\fR directory and runs +from there. The directory is removed when Configure ends, but this means +you must run the script from a place where you can write, i.e. not from +a read-only file system. +.PP +You can run \fIConfigure\fR remotely though, as in: +.Ex + ../package/Configure +.Ef +to configure sources that are not present locally. All the generated files +will be put in the directory where you're running the script from. This magic +is done thanks to the src.U unit, which is setting the \fI\$src\fR +and \fI\$rsrc\fR variables to point to the package sources. That path is +full or relative, depending on whether \fIConfigure\fR was invoked via a +full or relative path. +.PP +From within the \fIUU\fR subdirectory, you can use \fI\$rsrc\fR to access the +source files (units referring to source files link hints shall always use +this mechanism and not assume the file is present in the parent directory). +All the Makefiles should use the \$src variable as a pointer to the sources +from the top of the build directory (where \fIConfigure\fR is run), either +directly or via a VPATH setting. +.PP +When running \fIConfigure\fR remotely, the .SH files are extracted in the +build directory, not in the source tree. However, it requires some kind of +a \fImake\fR support to be able to compile things in a build directory whilst +the sources lie elsewhere. +''' +.SS Using Magic Redefinitions +.PP +By making use of the \fB\-M\fR switch, some magic remappings may take place +within a \fIconfmagic.h\fR file. That file needs to be included after +\fIconfig.h\fR, of course, but also after all the other needed include files. +Namely: +.Ex +#include "config.h" +\&... +\&... \fIother inclusions\fR ... +\&... +#include "confmagic.h" +.Ef +Typically, \fIconfmagic.h\fR will attempt to remap \fIbcopy()\fR +on \fImemcpy()\fR if no \fIbcopy()\fR is available locally, or transform +\fIvfork\fR into \fIfork\fR when necessary, hence making it useless to +bother about the \fIHAS_VFORK\fR symbol. +.PP +This configuration magic is documented in the Glossary file. +''' +.SS Unit Templates +.PP +There is a set of unit templates in the \fImetaconfig\fR source directory, +which are intended to be used by a (not yet written) program to quickly +produce new units for various kind of situations. No documentation for this +unfinished project, but I thought I would mention it in the manual page in +case you wish to do it yourself and then contribute it... +.SH AUTHORS +Larry Wall for version 2.0. +.br +Harlan Stenn for important unit extensions. +.br +Raphael Manfredi . +.br +Many other contributors for the +\fImetaconfig\fR units. See the credit file for a list. +.SH FILES +.TP 10 +.PD 0 +LIB/dist/mcon/U/*.U +Public unit files +.TP +U/*.U +Private unit files +.TP +LIB/dist/mcon/Glossary +Glossary file, describing all the metaconfig symbols. +.TP +Obsolete +Lists all the obsolete symbols used by the sources. +.TP +Wanted +Lists all the wanted symbols. +.PD +.sp +.in +5 +where LIB is $privlibexp. +.in -5 +.SH BUGS +Units are sometimes included unnecessarily if one of its symbols is +accidentally mentioned, e.g. in a comment. +Better too many units than too few, however. +.SH "SEE ALSO" +pat($manext), makeSH($manext), makedist($manext), metalint($manext) +!GROK!THIS! +chmod 444 metaconfig.$manext diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH new file mode 100755 index 0000000..65259d7 --- /dev/null +++ b/mcon/man/mlint.SH @@ -0,0 +1,559 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting mcon/man/metalint.$manext (with variable substitutions)" +$rm -f metalint.$manext +$spitshell >metalint.$manext <' unless +the whole string is quoted. This message is suppressed by a ?LINT: nocomment +hint. +.TP +"missing space after ':' to make it a comment." +A line starting by ':' is interpreted by the shell but will be ignored. There +must be a space after the ':' though, or the shell will try to execute an +unknown command... +.TP +"found unquoted meta-character > on comment line." +A line starting by ':' is interpreted by the shell but will be ignored. +This means that meaningful meta-characters such as '(' or '>' must be +quoted or escaped with a leading backslash. +.TP +"found dangling quote on ':' comment line." +An unclosed single or double quote was spotted on a ':' comment line. +Since those lines are interpreted by the shell, albeit ignored, all quotes +must match perfectly. +.TP +"not ending with a blank line." +Since all units are gathered together to form one big script, it is recommended +(hence enforced by \fImetalint\fR) that every unit file end with an empty line. +.TP +"last line not ending with a new-line character." +This is merely intended to users whose editor does not always append a +new-line at the end of text files. Should not happen when you use \fIvi\fR. +.TP +"symbol '\$xxx' was not described." +The shell symbol defined by this unit was not documented. Use the \fIdescribe\fR +lint hint to suppress this message. +.TP +"C symbol 'XXX' was not described." +The C symbol defined by this unit was not documented. Use the \fIknown\fR lint +hint to suppress this message. +.TP +"C symbol 'XXX' was not defined by any ?H: line." +A C symbol was advertised by never defined, hence it cannot appear in the +\fIconfig.h\fR file and is therefore useless... +.TP +"variable '\$xxx' should have been set." +A variable listed on the make line as made by the unit was not set by the +shell code body. Use the \fIset\fR lint hint to suppress this message in +pathological cases. +.TP +"unused dependency variable '\$xxx'." +Apparently no usage is made from a shell variable. Use the \fIchange\fR or +\fIuse\fR lint hints (depending on the situation) to suppress this message. +.TP +"unused conditional variable '\$xxx'. +Apparently no usage is made from this conditional dependency. The \fIchange\fR +or \fIuse\fR lint hints can be used to suppress this message. +.TP +"unused temporary variable '\$xxx'." +A variable declared as temporary in a ?T: line is not used. The \fIuse\fR lint +hint will fool \fImetalint\fR into thinking it's indeed used. +.TP +"unknown control sequence '?XXX:'." +Attempt to use an unknown control sequence. +.TP +"unknown LINT request '$xxx' ignored." +An unknown ?LINT: tag was used. All such tags must be spelled out in lowercase. +.TP +"symbol '\$xxx' has no default value." +A symbol used as a conditional dependency in some unit has no default value +set by a ?D: line. +.TP +"stale ?MAKE: dependency 'xxx'." +Unit lists a symbol as a dependency, but that symbol is otherwise unknown, i.e. +never appears as made by any other unit. +.TP +"symbol '\$xxx' missing from ?MAKE." +A symbol used or defined was not listed as a dependency in the ?MAKE: line. +.TP +"missing xxx from ?MAKE for visible '\$yyy'." +A symbol defined as visible by a special unit is used, but that special unit +is not part of the dependency line. +.TP +"stale ?M: dependency 'xxx'." +Magic line lists a C symbol as a dependency but that symbol is not known +by any unit. +.TP +"unknown symbol '\$xxx'." +I have no idea about what this symbol is. If the variable is externally +define, this warning can be suppresed via a proper ?LINT: extern. +.TP +"read-only symbol '\$xxx' is set." +A symbol that should be read-only is set by the unit's shell code body. +.TP +"obsolete symbol 'xxx' is used." +An obsolete symbol is used in the unit's shell code. +.TP +"undeclared symbol '\$xxx' is set." +The unit tries to set a shell variable which has not been otherwise declared +as made or as a temporary variable, or whatever. +.TP +"unclosed ?H: section." +The ?H: section was not terminated by a single '?H:.' line before +the body of the unit or the start of another ?C: section. +.TP +"C symbol 'xxx' is defined in the following units:" +The C symbol is defined in more that one unit. Offending units are listed. +.TP +"Shell symbol 'xxx' is defined in the following units:" +A shell symbol is defined in more than one unit. Offending units folllow. +.TP +"Shell symbol 'xxx' is altogether:" +A shell symbol is defined by some units, obsoleted by others and used as +a temporary. +.TP +"Shell symbol 'xxx' is both defined and obsoleted:" +Self explainatory. +.TP +"Shell symbol 'xxx' is both defined and used as temporary:" +Self explainatory. +.TP +"Shell symbol 'xxx' obsoleted also used as temporary:" +Self explainatory. +.TP +"definition of '\$xxx' not closed by '?S:.'." +Self explainatory. +.TP +"definition of 'XXX' not closed by '?C:.'." +Self explainatory. +.TP +"magic definition of 'xxx' not closed by '?M:.'." +Self explainatory. +.TP +"variable '\$xxx' is defined externally." +A variable defined externally (i.e. in another unit) is used, without proper +dependency information. Use the \fIextern\fR lint hint to suppress this message. +.TP +"file 'xxx' was not created." +A file listed as a private UU file is not created by the special unit. +Creation is detected by seing an explicit shell redirection to the file, +not by an implicit creation (such as a C compilation would for instance). +All special units should create only shell scripts explicitely anyway so this +message cannot be suppressed via a lint hint. +.TP +"local file 'xxx' may override the one set by 'unit.U'." +You are attempting to create a local file, but the special unit creates one +bearing the exact same name and should it be loaded before +within \fIConfigure\fR, you would override that file. Change the name of your +local file. +.TP +"unused temporary file 'xxx'. +The file was declared on the ?F: line but does not appear to be used +anywhere. +.TP +"mis-used temporary file 'xxx'. +A local temporary file has been declared on the ?F: line and is used in +a way that may not be the proper one. Indeed, all such local files should +be called with an explicit relative path, to avoid PATH lookups which could +get you another file. +.TP +"you might not always get file 'xxx' from 'unit.U'." +You seem to be calling the specified file, but not by using an explicit +relative pathname. Relying on the PATH to find this file is not safe. +To fix this problem, call your file using somthing like \fI./xxx\fR. +.TP +"missing Unit from ?MAKE for private file 'xxx'." +You are using a private UU file without listing the special unit that +produces it in your dependency line. Add the unit to your dependency list. +.TP +"unknown private file 'xxx'." +The file does not appear on any ?F: line; however it should. +.TP +"File 'xxx' is defined in the following units:" +The listed units cannot seem to agree on who is defining the file. +.TP +"empty here-document name discouraged." +You should refrain from using empty names for here documents, as +.I metalint +will not monitor those. +.TP +"unclosed here-document xxx started line x." +The opened here-document at line x was never closed in this unit. +This generally mean that when the unit is used, the generated script will +not work! +.TP +"spurious 'LINT xxx' directive." +You have inserted a ?LINT: directive that is not used to shut-up warnings. +.TP +"Cycle found for:" +There is a dependency cycle found for the symbols listed. Only the symbols +involved in the cycle are listed. +.TP +"Cycle involves:" +An exerpt of the dependencies where the cycle was found is listed. This may +involve far more symbols than the previous message, because \fImetalint\fR +actually rescans the rules to emphasize the cycle and stops whenever it has +found one, i.e. it does not try to minimize it (the cycle is found using +another algorithm, which unfortunately cannot spit it out but only say +for sure there is one). +.SH REFERENCE +.I Metalint +uses the following control lines, which are otherwise ignored by +\fImetaconfig\fR: +.TP 5 +?V:\fIread-only symbols\fR:\fIread-write symbols\fR +This line should be used only in special units. It lists all the shell +variable defined by the unit which should not be used directly as dependencies +by other units: they must include this special unit in their dependency list +if they make use of any of the symbols described here. Those can be viewed +as exported symbols which you inherit from when depending from the unit. +Symbols may be exported read-only or read-write. +.TP +?F:\fIfiles created\fR +This line serves two purposes: it is a \fImetalint\fR hint, and also +a placeholder for future \fIjmake\fR use. It must list three kind of files: +the temporary one which are created for a test, the private UU ones created +in the UU directory for later perusal, and the public ones left in the +root directory of the package. Temporary files must be listed with a +preceding '!' character (meaning "no! they're not re-used later!"), private +UU files should be preceded by a './' (meaning: to use them, say \fI./file\fR, +not just \fIfile\fR), and public ones should be named as-is. +.TP +?T:\fIshell temporaries\fR +This line should list all the shell variables used as temporaries within +the unit's body. This line should be kept accurate, and prevents you from +writing a unit defining a symbol which would be used as a scratch variable +in another unit... +.TP +?LINT:\fIkeyword\fR \fIsymbol_list\fR +Specifies a lint hint. The following keywords are available: +.RS +10 +.TP 15 +.PD 0 +.I change +shell variable ok to be changed +.TP +.I create +persistent file ok to be created by non-special unit +.TP +.I define +shell variables listed are defined in this unit +.TP +.I describe +listed shell variables are described by ?S: +.TP +.I extern +variable known to be externally defined +.TP +.I empty +unit file is empty and kept only as a placeholder. +.TP +.I known +listed C variables are described +.TP +.I nocomment +unit file is special and may miss a leading ': description' line. +.TP +.I nothere +listed names are not here documents (e.g. "1 << foo" in a C program) +.TP +.I set +listed variables are set +.TP +.I use +variables listed are used by this unit +.TP +.I unclosed +listed names of here-documents are not closed in this unit +.TP +.I usefile +listed file is used (do not prepend name with '!' for temporary ones) +.PD +.RS -10 +.SH AUTHORS +Harlan Stenn wrote the first version, based on +Larry Wall's \fImetaconfig\fR from dist 2.0. +.br +Raphael Manfredi rewrote it from scratch for +3.0 with a few enhancements. +.SH FILES +.TP 10 +.PD 0 +LIB/dist/mcon/U/*.U +Public unit files +.TP +U/*.U +Private unit files +.PD +.sp +.in +5 +where LIB is $privlibexp. +.in -5 +.SH BUGS +Maybe. +.SH "SEE ALSO" +metaconfig($manext), metaxref($manext) +!GROK!THIS! +chmod 444 metalint.$manext diff --git a/mcon/man/mxref.SH b/mcon/man/mxref.SH new file mode 100755 index 0000000..b0dbbad --- /dev/null +++ b/mcon/man/mxref.SH @@ -0,0 +1,133 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting mcon/man/metaxref.$manext (with variable substitutions)" +$rm -f metaxref.$manext +$spitshell >metaxref.$manext < +.SH FILES +.TP 10 +.PD 0 +LIB/dist/mcon/U/*.U +Public unit files. +.TP +U/*.U +Private unit files +.TP +I.fui +Lists information sorted by file, unit and item. +.TP +I.uif +Lists information sorted by unit, item and file. +.TP +Obsolete +Lists all the obsolete symbols used by the sources. +.PD +.sp +.in +5 +where LIB is $privlibexp. +.in -5 +.SH BUGS +Metaxref will list among the wanted items all those magic symbols defined +within units on the ?M: lines. Those are relevant only when metaconfig is +invoked with the \fB\-M\fR option. +.SH "SEE ALSO" +metaconfig($manext), metalint($manext) +!GROK!THIS! +chmod 444 metaxref.$manext diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH new file mode 100755 index 0000000..8fb6095 --- /dev/null +++ b/mcon/mconfig.SH @@ -0,0 +1,182 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting mcon/mconfig (with variable substitutions)" +cat >mconfig < +# Key Contributor: Harlan Stenn +# +# $Log: mconfig.SH,v $ +# Revision 3.0.1.5 1995/07/25 14:19:05 ram +# patch56: new -G option +# +# Revision 3.0.1.4 1994/06/20 07:11:04 ram +# patch30: new -L option to override public library path for testing +# +# Revision 3.0.1.3 1994/01/24 14:20:53 ram +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.2 1993/10/16 13:53:10 ram +# patch12: new -M option for magic symbols and confmagic.h production +# +# Revision 3.0.1.1 1993/08/19 06:42:26 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:17 ram +# Baseline for dist 3.0 netwide release. +# + +# Perload ON + +\$MC = '$privlib'; +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +\$grep = '$grep'; +!GROK!THIS! + +$spitshell >>mconfig <<'!NO!SUBS!' +chop($date = `date`); +&profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts("dhkmostvwGMVL:"); + +$MC = $opt_L if $opt_L; # May override public library path +$MC = &tilda_expand($MC); # ~name expansion +chop($WD = `pwd`); # Working directory +chdir $MC || die "Can't chdir to $MC: $!\n"; +chop($MC = `pwd`); # Real metaconfig lib path (no symbolic links) +chdir $WD || die "Can't chdir back to $WD: $!\n"; + +++$opt_k if $opt_d; +++$opt_M if -f 'confmagic.h'; # Force -M if confmagic.h already there + +if ($opt_V) { + print STDERR "metaconfig $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +unlink 'Wanted' unless $opt_w; # Wanted rebuilt if no -w +unlink 'Obsolete' unless $opt_w; # Obsolete file rebuilt if no -w +&readpackage; # Merely get the package's name +&init; # Various initializations +`mkdir .MT 2>&1` unless -d '.MT'; # For private temporary files + +&locate_units; # Fill in @ARGV with a unit list +&extract_dependencies; # Extract dependencies from units +&extract_filenames; # Extract files to be scanned for +&build_wanted; # Build a list of wanted symbols in file Wanted +&build_makefile; # To do the transitive closure of dependencies +&solve_dependencies; # Now run the makefile to close dependency graph +&create_configure; # Create the Configure script and related files +&cosmetic_update; # Update the manifests + +if ($opt_k) { + print "Leaving subdirectory .MT unremoved so you can peruse it.\n" + unless $opt_s; +} else { + `rm -rf .MT 2>&1`; +} +print "Done.\n" unless $opt_s; + +# General initializations +sub init { + &init_except; # Token which have upper-cased letters + &init_keep; # The keep status for built-in interpreter + &init_priority; # Priorities for diadic operators + &init_constants; # Define global constants + &init_depend; # The %Depend array records control line handling +} + +sub init_constants { + $NEWMANI = 'MANIFEST.new'; # List of files to be scanned + $MANI = 'MANIFEST'; # For manifake +} + +# Record the exceptions -- almost all symbols but these are lower case +# We also use three symbols from Unix.U for default file suffixes. +sub init_except { + $Except{'Author'}++; + $Except{'Date'}++; + $Except{'Header'}++; + $Except{'Id'}++; + $Except{'Locker'}++; + $Except{'Log'}++; + $Except{'RCSfile'}++; + $Except{'Revision'}++; + $Except{'Source'}++; + $Except{'State'}++; + $Except{'_a'}++; + $Except{'_o'}++; + $Except{'_exe'}++; +} + +# Print out metaconfig's usage and exits +sub usage { + print STDERR <<'EOH'; +Usage: metaconfig [-dhkmostvwGMV] [-L dir] + -d : debug mode. + -h : print this help message and exits. + -k : keep temporary directory. + -m : assume lots of memory and swap space. + -o : maps obsolete symbols on new ones. + -s : silent mode. + -t : trace symbols as they are found. + -v : verbose mode. + -w : trust Wanted file as being up-to-date. + -G : also provide a GNU configure-like front end. + -L : specify main units repository. + -M : activate production of confmagic.h. + -V : print version number and exits. +EOH + exit 1; +} + +!NO!SUBS! +$grep -v '^;#' pl/locate.pl >>mconfig +$grep -v '^;#' pl/common.pl >>mconfig +$grep -v '^;#' pl/depend.pl >>mconfig +$grep -v '^;#' pl/init.pl >>mconfig +$grep -v '^;#' pl/extract.pl >>mconfig +$grep -v '^;#' pl/files.pl >>mconfig +$grep -v '^;#' pl/wanted.pl >>mconfig +$grep -v '^;#' pl/obsolete.pl >>mconfig +$grep -v '^;#' pl/makefile.pl >>mconfig +$grep -v '^;#' pl/order.pl >>mconfig +$grep -v '^;#' pl/configure.pl >>mconfig +$grep -v '^;#' pl/cosmetic.pl >>mconfig +$grep -v '^;#' pl/eval.pl >>mconfig +$grep -v '^;#' ../pl/package.pl >>mconfig +$grep -v '^;#' ../pl/manifake.pl >>mconfig +$grep -v '^;#' ../pl/tilde.pl >>mconfig +$grep -v '^;#' ../pl/profile.pl >>mconfig +chmod +x mconfig +$eunicefix mconfig diff --git a/mcon/mlint.SH b/mcon/mlint.SH new file mode 100755 index 0000000..7f1f550 --- /dev/null +++ b/mcon/mlint.SH @@ -0,0 +1,136 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting mcon/mlint (with variable substitutions)" +cat >mlint < +# +# $Log: mlint.SH,v $ +# Revision 3.0.1.3 1994/05/06 15:20:42 ram +# patch23: added -L switch to override public unit repository path +# +# Revision 3.0.1.2 1994/01/24 14:21:00 ram +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.1 1993/08/19 06:42:27 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:17 ram +# Baseline for dist 3.0 netwide release. +# + +# Perload ON + +\$MC = '$privlib'; +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +\$grep = '$grep'; +!GROK!THIS! + +$spitshell >>mlint <<'!NO!SUBS!' +&profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts("hklVL:"); + +if ($opt_V) { + print STDERR "metalint $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +chop($date = `date`); +$MC = $opt_L if $opt_L; # May override library path +$MC = &tilda_expand($MC); # ~name expansion +chop($WD = `pwd`); # Working directory +chdir $MC || die "Can't chdir to $MC: $!\n"; +chop($MC = `pwd`); # Real metalint lib path (no symbolic links) +chdir $WD || die "Can't chdir back to $WD: $!\n"; + +&init; # Various initializations +`mkdir .MT 2>&1` unless -d '.MT'; # For private temporary files + +&locate_units; # Fill in @ARGV with a unit list +&extract_dependencies; # Extract dependencies from units +&sanity_checks; # Perform sanity checks + +if ($opt_k) { + print "Leaving subdirectory .MT unremoved so you can peruse it.\n" + unless $opt_s; +} else { + `rm -rf .MT 2>&1`; +} +print "Done.\n" unless $opt_s; + +# General initializations +sub init { + &init_except; # Token which have upper-cased letters + &init_depend; # The %Depend array records control line handling +} + +# Record the exceptions -- all symbols but these are lower case +sub init_except { + $Except{'Author'}++; + $Except{'Date'}++; + $Except{'Header'}++; + $Except{'Id'}++; + $Except{'Locker'}++; + $Except{'Log'}++; + $Except{'RCSfile'}++; + $Except{'Revision'}++; + $Except{'Source'}++; + $Except{'State'}++; +} + +# Print out metalint's usage and exits +sub usage { + print STDERR <>mlint +$grep -v '^;#' pl/lint.pl >>mlint +$grep -v '^;#' pl/init.pl >>mlint +$grep -v '^;#' pl/extract.pl >>mlint +$grep -v '^;#' pl/obsolete.pl >>mlint +$grep -v '^;#' pl/tsort.pl >>mlint +$grep -v '^;#' ../pl/tilde.pl >>mlint +$grep -v '^;#' ../pl/profile.pl >>mlint +chmod +x mlint +$eunicefix mlint diff --git a/mcon/mxref.SH b/mcon/mxref.SH new file mode 100755 index 0000000..06206ee --- /dev/null +++ b/mcon/mxref.SH @@ -0,0 +1,146 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting mcon/mxref (with variable substitutions)" +cat >mxref < +# +# $Log: mxref.SH,v $ +# Revision 3.0.1.3 1997/02/28 16:30:49 ram +# patch61: new -L option to match metaconfig and metalint +# +# Revision 3.0.1.2 1994/01/24 14:21:04 ram +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.1 1993/08/19 06:42:27 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:18 ram +# Baseline for dist 3.0 netwide release. +# + +# Perload ON + +\$MC = '$privlib'; +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +\$grep = '$grep'; +!GROK!THIS! + +$spitshell >>mxref <<'!NO!SUBS!' +&profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts("df:hkmsVL:"); + +chop($date = `date`); +chop($WD = `pwd`); # Working directory +$MC = $opt_L if $opt_L; # May override library path +$MC = &tilda_expand($MC); # ~name expansion +chdir $MC || die "Can't chdir to $MC: $!\n"; +chop($MC = `pwd`); # Real metaxref lib path (no symbolic links) +chdir $WD || die "Can't chdir back to $WD: $!\n"; + +if ($opt_V) { + print STDERR "metaxref $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$NEWMANI = $opt_f || 'MANIFEST.new'; + +&init; # Various initializations +`mkdir .MT 2>&1` unless -d '.MT'; # For private temporary files +unlink 'Obsolete'; # Obsolete file rebuilt + +&locate_units; # Fill in @ARGV with a unit list +&extract_dependencies; # Extract dependencies from units +&extract_filenames; # Get source files from MANIFEST.new +&build_xref; # Parse files, build I.* output + +if ($opt_k) { + print "Leaving subdirectory .MT unremoved so you can peruse it.\n" + unless $opt_s; +} else { + `rm -rf .MT 2>&1`; +} +print "Done.\n" unless $opt_s; + +# General initializations +sub init { + &init_except; # Token which have upper-cased letters + &init_depend; # The %Depend array records control line handling +} + +# Record the exceptions -- all symbols but these are lower case +sub init_except { + $Except{'Author'}++; + $Except{'Date'}++; + $Except{'Header'}++; + $Except{'Id'}++; + $Except{'Locker'}++; + $Except{'Log'}++; + $Except{'RCSfile'}++; + $Except{'Revision'}++; + $Except{'Source'}++; + $Except{'State'}++; +} + +# Print out metaxref's usage and exits +sub usage { + print STDERR <>mxref +$grep -v '^;#' pl/common.pl >>mxref +$grep -v '^;#' pl/xref.pl >>mxref +$grep -v '^;#' pl/files.pl >>mxref +$grep -v '^;#' pl/init.pl >>mxref +$grep -v '^;#' pl/extract.pl >>mxref +$grep -v '^;#' pl/obsolete.pl >>mxref +$grep -v '^;#' pl/xwant.pl >>mxref +$grep -v '^;#' pl/gensym.pl >>mxref +$grep -v '^;#' ../pl/manifake.pl >>mxref +$grep -v '^;#' ../pl/tilde.pl >>mxref +$grep -v '^;#' ../pl/profile.pl >>mxref +chmod +x mxref +$eunicefix mxref diff --git a/mcon/pl/common.pl b/mcon/pl/common.pl new file mode 100644 index 0000000..0d1ea5a --- /dev/null +++ b/mcon/pl/common.pl @@ -0,0 +1,289 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: common.pl,v $ +;# Revision 3.0.1.4 1994/10/29 16:35:01 ram +;# patch36: metaconfig and metaxref ignore ?F: lines from now on +;# +;# Revision 3.0.1.3 1994/05/13 15:29:04 ram +;# patch27: now understands macro definitions in ?H: lines +;# +;# Revision 3.0.1.2 1994/01/24 14:22:54 ram +;# patch16: can now define "internal use only" variables on ?MAKE: lines +;# +;# Revision 3.0.1.1 1993/10/16 13:53:29 ram +;# patch12: added support for ?M: lines and confmagic.h production +;# +;# Revision 3.0 1993/08/18 12:10:19 ram +;# Baseline for dist 3.0 netwide release. +;# +;# The list of all available units is held in @ARGV. We shall parse them and +;# extract the dependencies. A lot of global data structures are filled in +;# during this phase. +;# +;# The following two H tables are used to record each know symbol (i.e. a +;# symbol known by at least one unit), and also how many times this symbol is +;# found in the sources. If an entry for a given key is positive, then the +;# associated symbol (i.e. the key) is wanted and it will be written in the +;# Wanted file. +;# %shmaster{'$sym'} records how many times '$sym' is found in a .SH file +;# %cmaster{'SYM'} records how many times 'SYM' is found in a .c file +;# %cwanted{'SYM'} records the set of necessary shell symbols needed for SYM +;# %mwanted{'sym'} is set of C symbols needed when sym is found in .c file +;# +;# This data structure records the initializations which are requires at the +;# beginning of a Configure script. The initialization only occurs when the +;# symbol is needed. Those symbols will appear in the produced config.sh file, +;# hence the name of "master" symbols. +;# @Master records shell configuration symbols which will appear in config.sh +;# +;# The @Cond array records the conditional shell symbols, i.e. those whose +;# value may be defaulted. They will appear in the initialization section of +;# the Configure script with the default value if they are not otherwise used +;# but Configure needs a suitable value internally. +;# @Cond records symbols which are flagged as conditional in the dependencies +;# %hasdefault{'sym'} is true when the conditional 'sym' has a default value +;# +;# The %Obsolete array records the obsolecence for units or symbols. The key +;# ends with .U for units, otherwise it is a symbol. Unit's obsolescence is +;# flagged with a ?O: line (the line being the message which will be issued +;# when the unit is used) while symbol obsolecence is indicated on the leading +;# ?C: or ?S: line, between parenthesis. In that case, the value stored is the +;# new symbol which should be used insted. +;# %Obsolete{'unit.U'} is a message to be printed when obsolete unit is used +;# %Obsolete{'sym'} is the symbol to be used in place of the obsoleted 'sym' +;# +;# The $dependencies variable is used to record the dependencies extracted +;# from the units (?MAKE: line). +;# +;# During the dependency extraction. some files are produced in the .MT dir. +;# Init.U records the initialization wanted +;# Config_h.U records the informations which could go in config.h.SH +;# Extern.U records the libraries and includes wanted by each symbol +;# +;# This file is shared by both metaconfig and metaxref +;# +# Initialize the extraction process by setting some variables. +# We return a string to be eval to do more customized initializations. +sub init_extraction { + open(INIT, ">$WD/.MT/Init.U") || + die "Can't create .MT/Init.U\n"; + open(CONF_H, ">$WD/.MT/Config_h.U") || + die "Can't create .MT/Config_h.U\n"; + open(EXTERN, ">$WD/.MT/Extern.U") || + die "Can't create .MT/Extern.U\n"; + open(MAGIC_H, ">$WD/.MT/Magic_h.U") || + die "Can't create .MT/Magic_h.U\n"; + + $c_symbol = ''; # Current symbol seen in ?C: lines + $s_symbol = ''; # Current symbol seen in ?S: lines + $m_symbol = ''; # Current symbol seen in ?M: lines + $heredoc = ''; # Last "here" document symbol seen + $heredoc_nosubst = 0; # True for <<'EOM' here docs + $condlist = ''; # List of conditional symbols + $defined = ''; # List of defined symbols in the unit + $body = ''; # No procedure to handle body + $ending = ''; # No procedure to clean-up +} + +# End the extraction process +sub end_extraction { + close EXTERN; # External dependencies (libraries, includes...) + close CONF_H; # C symbol definition template + close INIT; # Required initializations + close MAGIC; # Magic C symbol redefinition templates + + print $dependencies if $opt_v; # Print extracted dependencies +} + +# Process the ?MAKE: line +sub p_make { + local($_) = @_; + local(@ary); # Locally defined symbols + local(@dep); # Dependencies + if (/^[\w+ ]*:/) { # Main dependency rule + s|^\s*||; # Remove leading spaces + chop; + s/:(.*)//; + @dep = split(' ', $1); # Dependencies + @ary = split(' '); # Locally defined symbols + foreach $sym (@ary) { + # Symbols starting with a '+' are meant for internal use only. + next if $sym =~ s/^\+//; + # Only sumbols starting with a lowercase letter are to + # appear in config.sh, excepted the ones listed in Except. + if ($sym =~ /^[_a-z]/ || $Except{$sym}) { + $shmaster{"\$$sym"} = undef; + push(@Master,"?$unit:$sym=''\n"); # Initializations + } + } + $condlist = ''; # List of conditional symbols + local($sym); # Symbol copy, avoid @dep alteration + foreach $dep (@dep) { + if ($dep =~ /^\+[A-Za-z]/) { + ($sym = $dep) =~ s|^\+||; + $condlist .= "$sym "; + push(@Cond, $sym) unless $condseen{$sym}; + $condseen{$sym}++; # Conditionally wanted + } + } + # Append to already existing dependencies. The 'defined' variable + # is set for &write_out, used to implement ?L: and ?I: canvas. It is + # reset each time a new unit is parsed. + # NB: leading '+' for defined symbols (internal use only) have been + # removed at this point, but conditional dependencies still bear it. + $defined = join(' ', @ary); # Symbols defined by this unit + $dependencies .= $defined . ':' . join(' ', @dep) . "\n"; + $dependencies .= " -cond $condlist\n" if $condlist; + } else { + $dependencies .= $_; # Building rules + } +} + +# Process the ?O: line +sub p_obsolete { + local($_) = @_; + $Obsolete{"$unit.U"} .= $_; # Message(s) to print if unit is used +} + +# Process the ?S: lines +sub p_shell { + local($_) = @_; + unless ($s_symbol) { + if (/^(\w+).*:/) { + $s_symbol = $1; + print " ?S: $s_symbol\n" if $opt_d; + } else { + warn "\"$file\", line $.: syntax error in ?S: construct.\n"; + $s_symbol = $unit; + return; + } + # Deal with obsolete symbol list (enclosed between parenthesis) + &record_obsolete("\$$_") if /\(/; + } + m|^\.\s*$| && ($s_symbol = ''); # End of comment +} + +# Process the ?C: lines +sub p_c { + local($_) = @_; + unless ($c_symbol) { + if (s/^(\w+)\s*~\s*(\S+)\s*(.*):/$1 $3:/) { + # The ~ operator aliases the main C symbol to another symbol which + # is to be used instead for definition in config.h. That is to say, + # the line '?C:SYM ~ other:' would look for symbol 'other' instead, + # and the documentation for symbol SYM would only be included in + # config.h if 'other' were actually wanted. + $c_symbol = $2; # Alias for definition in config.h + print " ?C: $1 ~ $c_symbol\n" if $opt_d; + } elsif (/^(\w+).*:/) { + # Default behaviour. Include in config.h if symbol is needed. + $c_symbol = $1; + print " ?C: $c_symbol\n" if $opt_d; + } else { + warn "\"$file\", line $.: syntax error in ?C: construct.\n"; + $c_symbol = $unit; + return; + } + # Deal with obsolete symbol list (enclosed between parenthesis) and + # make sure that list do not appear in config.h.SH by removing it. + &record_obsolete("$_") if /\(/; + s/\s*\(.*\)//; # Get rid of obsolete symbol list + } + s|^(\w+)\s*|?$c_symbol:/* $1| || # Start of comment + (s|^\.\s*$|?$c_symbol: */\n| && ($c_symbol = '', 1)) || # End of comment + s|^(.*)|?$c_symbol: *$1|; # Middle of comment + &p_config("$_"); # Add comments to config.h.SH +} + +# Process the ?H: lines +sub p_config { + local($_) = @_; + local($constraint); # Constraint to be used for inclusion + ++$old_version if s/^\?%1://; # Old version + if (s/^\?(\w+)://) { # Remove leading '?var:' + $constraint = $1; # Constraint is leading '?var' + } else { + $constraint = ''; # No constraint + } + if (/^#.*\$/) { # Look only for cpp lines + if (m|^#\$(\w+)\s+(\w+).*\$(\w+)|) { + # Case: #$d_var VAR "$var" + $constraint = $2 unless $constraint; + print " ?H: ($constraint) #\$$1 $2 \"\$$3\"\n" if $opt_d; + $cmaster{$2} = undef; + $cwanted{$2} = "$1\n$3"; + } elsif (m|^#define\s+(\w+)\((.*)\)\s+\$(\w+)|) { + # Case: #define VAR(x) $var + $constraint = $1 unless $constraint; + print " ?H: ($constraint) #define $1($2) \$$3\n" if $opt_d; + $cmaster{$1} = undef; + $cwanted{$1} = $3; + } elsif (m|^#\$define\s+(\w+)|) { + # Case: #$define VAR + $constraint = $1 unless $constraint; + print " ?H: ($constraint) #define $1\n" if $opt_d; + $cmaster{$1} = undef; + $cwanted{$1} = "define\n$unit"; + } elsif (m|^#\$(\w+)\s+(\w+)|) { + # Case: #$d_var VAR + $constraint = $2 unless $constraint; + print " ?H: ($constraint) #\$$1 $2\n" if $opt_d; + $cmaster{$2} = undef; + $cwanted{$2} = $1; + } elsif (m|^#define\s+(\w+).*\$(\w+)|) { + # Case: #define VAR "$var" + $constraint = $1 unless $constraint; + print " ?H: ($constraint) #define $1 \"\$$2\"\n" if $opt_d; + $cmaster{$1} = undef; + $cwanted{$1} = $2; + } else { + $constraint = $unit unless $constraint; + print " ?H: ($constraint) $_" if $opt_d; + } + } else { + print " ?H: ($constraint) $_" if $opt_d; + } + # If not a single ?H:. line, add the leading constraint + s/^\.// || s/^/?$constraint:/; + print CONF_H; +} + +# Process the ?M: lines +sub p_magic { + local($_) = @_; + unless ($m_symbol) { + if (/^(\w+):\s*([\w\s]*)\n$/) { + # A '?M:sym:' line implies a '?W:%<:sym' since we'll need to know + # about the wantedness of sym later on when building confmagic.h. + # Buf is sym is wanted, then the C symbol dependencies have to + # be triggered. That is done by introducing sym in the mwanted + # array, known by the Wanted file construction process... + $m_symbol = $1; + print " ?M: $m_symbol\n" if $opt_d; + $mwanted{$m_symbol} = $2; # Record C dependencies + &p_wanted("$unit:$m_symbol"); # Build fake ?W: line + } else { + warn "\"$file\", line $.: syntax error in ?M: construct.\n"; + } + return; + } + (s/^\.\s*$/?$m_symbol:\n/ && ($m_symbol = '', 1)) || # End of block + s/^/?$m_symbol:/; + print MAGIC_H; # Definition goes to confmagic.h + print " ?M: $_" if $opt_d; +} + +sub p_ignore {} # Ignore comment line +sub p_lint {} # Ignore lint directives +sub p_visible {} # No visible checking in metaconfig +sub p_temp {} # No temporary variable control +sub p_file {} # Ignore produced file directives (for now) + diff --git a/mcon/pl/configure.pl b/mcon/pl/configure.pl new file mode 100644 index 0000000..f78925f --- /dev/null +++ b/mcon/pl/configure.pl @@ -0,0 +1,245 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: configure.pl,v $ +;# Revision 3.0.1.5 1995/01/30 14:47:15 ram +;# patch49: removed old "do name()" routine call constructs +;# +;# Revision 3.0.1.4 1995/01/11 15:40:02 ram +;# patch45: now allows @if statements for the add.Config_sh unit inclusion +;# +;# Revision 3.0.1.3 1994/05/06 15:21:23 ram +;# patch23: cleaned up the 'prepend' command +;# +;# Revision 3.0.1.2 1994/01/24 14:23:21 ram +;# patch16: new general <\$variable> macro substitutions in wiped units +;# +;# Revision 3.0.1.1 1993/10/16 13:54:02 ram +;# patch12: added support for ?M: lines and confmagic.h production +;# patch12: new Makefile command cm_h_weed +;# +;# Revision 3.0 1993/08/18 12:10:20 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# This file is the heart of metaconfig. We generate a Configure script using +;# the informations gathered in the @cmdwanted array. A unit is expected to have +;# its path written in the %Unit array (indexing is done with the unit's name +;# without the .U extension). +;# +;# The units are run through a built-in interpreter before being written to +;# the Configure script. +;# +# Create the Configure script +sub create_configure { + print "Creating Configure...\n" unless $opt_s; + open(CONFIGURE,">Configure") || die "Can't create Configure: $!\n"; + open(CONF_H,">config_h.SH") || die "Can't create config_h.SH: $!\n"; + if ($opt_M) { + open(MAGIC_H,">confmagic.h") || die "Can't create confmagic.h: $!\n"; + } + + chdir('.MT') || die "Can't cd to .MT: $!\n"; + for (@cmdwanted) { + &process_command($_); # Run the makefile command + } + chdir($WD) || die "Can't cd back to $WD\n"; + close CONFIGURE; + print CONF_H "#endif\n"; # Close the opened #ifdef (see Config_h.U) + print CONF_H "!GROK!THIS!\n"; + close CONF_H; + if ($opt_M) { + print MAGIC_H "#endif\n"; # Close the opened #ifdef (see Magic_h.U) + close MAGIC_H; + } + `chmod +x Configure`; +} + +# Process a Makefile 'pick' command +sub process_command { + local($cmd, $target, $unit_name) = split(' ', $_[0]); + local($name) = $unit_name . '.U'; # Restore missing .U + local($file) = $name; # Where unit is located + unless ($file =~ m|^\./|) { # Unit produced earlier by metaconfig + $file = $Unit{$unit_name}; # Fetch unit from U directory + } + if (defined $Obsolete{$name}) { # Signal use of an obsolete unit + warn "\tObsolete unit $name is used:\n"; + local(@msg) = split(/\n/, $Obsolete{$name}); + foreach $msg (@msg) { + warn "\t $msg\n"; + } + } + die "Can't open $file.\n" unless open(UNIT, $file); + print "\t$cmd $file\n" if $opt_v; + &init_interp; # Initializes the interpreter + + # The 'add' command adds the unit to Configure. + if ($cmd eq 'add') { + while () { + print CONFIGURE unless &skipped || !&interpret($_); + } + } + + # The 'weed' command adds the unit to Configure, but + # makes some tests for the lines starting with '?' or '%'. + # These lines are kept only if the symbol is wanted. + elsif ($cmd eq 'weed') { + while () { + if (/^\?(\w+):/) { + s/^\?\w+:// if $symwanted{$1}; + } + if (/^%(\w+):/) { + s/^%\w+:// if $condwanted{$1}; + } + print CONFIGURE unless &skipped || !&interpret($_); + } + } + + # The 'wipe' command adds the unit to Configure, but + # also substitues some hardwired macros. + elsif ($cmd eq 'wipe') { + while () { + s//$package/g; + s//$maintloc/g; + s//$version/g; # This is metaconfig's version + s//$patchlevel/g; # And patchlevel information + s//$date/g; + s//$baserev/g; + s/<\$(\w+)>/eval("\$$1")/ge; # <$var> -> $var substitution + print CONFIGURE unless &skipped || !&interpret($_); + } + } + + # The 'add.Null' command adds empty initializations + # to Configure for all the shell variable used. + elsif ($cmd eq 'add.Null') { + for (sort @Master) { + if (/^\?(\w+):/) { + s/^\?\w+:// if $symwanted{$1}; + } + print CONFIGURE unless &skipped; + } + for (sort @Cond) { + print CONFIGURE "$_=''\n" + unless $symwanted{$_} || $hasdefault{$_}; + } + while () { + print CONFIGURE unless &skipped || !&interpret($_); + } + print CONFIGURE "CONFIG=''\n\n"; + } + + # The 'add.Config_sh' command fills in the production of + # the config.sh script within Configure. Only the used + # variable are added, the conditional ones are skipped. + elsif ($cmd eq 'add.Config_sh') { + while () { + print CONFIGURE unless &skipped || !&interpret($_); + } + for (sort @Master) { + if (/^\?(\w+):/) { + # Can't use $shmaster, because config.sh must + # also contain some internal defaults used by + # Configure (e.g. nm_opt, libc, etc...). + s/^\?\w+:// if $symwanted{$1}; + } + s/^(\w+)=''/$1='\$$1'/; + print CONFIGURE unless &skipped; + } + } + + # The 'close.Config_sh' command adds the final EOT line at + # the end of the here-document construct which produces the + # config.sh file within Configure. + elsif ($cmd eq 'close.Config_sh') { + print CONFIGURE "EOT\n\n"; # Ends up file + } + + # The 'c_h_weed' command produces the config_h.SH file. + # Only the necessary lines are kept. If no conditional line is + # ever printed, then the file is useless and will be removed. + elsif ($cmd eq 'c_h_weed') { + $printed = 0; + while () { + if (/^\?(\w+):/) { + s/^\?\w+:// if $cmaster{$1} || $symwanted{$1}; + } + unless (&skipped || !&interpret($_)) { + if (/^$/) { + print CONF_H "\n" if $printed; + $printed = 0; + } else { + print CONF_H; + ++$printed; + } + } + } + } + + # The 'cm_h_weed' command produces the confmagic.h file. + # Only the necessary lines are kept. If no conditional line is + # ever printed, then the file is useless and will be removed. + elsif ($cmd eq 'cm_h_weed') { + if ($opt_M) { + $printed = 0; + while () { + if (/^\?(\w+):/) { + s/^\?\w+:// if $cmaster{$1} || $symwanted{$1}; + } + unless (&skipped || !&interpret($_)) { + if (/^$/) { + print MAGIC_H "\n" if $printed; + $printed = 0; + } else { + print MAGIC_H; + ++$printed; + } + } + } + } + } + + # The 'prepend' command will add the content of the target to + # the current file (held in $file, the one which UNIT refers to), + # if the file is not empty. + elsif ($cmd eq 'prepend') { + if (-s $file) { + open(PREPEND, ">.prepend") || + die "Can't create .MT/.prepend.\n"; + open(TARGET, $Unit{$target}) || + die "Can't open $Unit{$target}.\n"; + while () { + print PREPEND unless &skipped; + } + print PREPEND ; # Now add original file contents + close PREPEND; + close TARGET; + rename('.prepend', $file) || + die "Can't rename .prepend into $file.\n"; + } + } + + # Command not found + else { + die "Unrecognized command from Makefile: $cmd\n"; + } + &check_state; # Make sure there are no pending statements + close UNIT; +} + +# Skip lines starting with ? or %, including all the following continuation +# lines, if any. Return 0 if the line was not to be skipped, 1 otherwise. +sub skipped { + return 0 unless /^\?|^%/; + &complete_line(UNIT) if /\\\s*$/; # Swallow continuation lines + 1; +} + diff --git a/mcon/pl/cosmetic.pl b/mcon/pl/cosmetic.pl new file mode 100644 index 0000000..bfb9575 --- /dev/null +++ b/mcon/pl/cosmetic.pl @@ -0,0 +1,114 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: cosmetic.pl,v $ +;# Revision 3.0.1.3 1995/07/25 14:19:16 ram +;# patch56: added support for new -G option +;# +;# Revision 3.0.1.2 1995/01/30 14:47:52 ram +;# patch49: forgot to localize the spaces variable +;# +;# Revision 3.0.1.1 1993/11/10 17:39:10 ram +;# patch14: now also adds confmagic.h if not in MANIFEST.new already +;# patch14: new functions mani_add and mani_remove to factorize code +;# +;# Revision 3.0 1993/08/18 12:10:20 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +# Update the MANIFEST.new file if necessary +sub cosmetic_update { + # Check for an "empty" config_h.SH (2 blank lines only). This test relies + # on the actual text held in Config_h.U. If the unit is modified, then the + # following might need adjustments. + local($blank_lines) = 0; + local($spaces) = 0; + open(CONF_H, 'config_h.SH') || die "Can't open config_h.SH\n"; + while() { + ++$blank_lines if /^$/; + } + unlink 'config_h.SH' unless $blank_lines > 3; + + open(NEWMANI,$NEWMANI); + $_ = ; + /(\S+\s+)\S+/ && ($spaces = length($1)); # Spaces wanted + close NEWMANI; + $spaces = 29 if ($spaces < 12); # Default value + open(NEWMANI,$NEWMANI); + $/ = "\001"; # Swallow the whole file + $_ = ; + $/ = "\n"; + close NEWMANI; + + $* = 1; # Multi-line matching + + &mani_add('Configure', 'Portability tool', $spaces) unless /^Configure\b/; + &mani_add('config_h.SH', 'Produces config.h', $spaces) + unless /^config_h\.SH\b/ || !-f 'config_h.SH'; + &mani_add('confmagic.h', 'Magic symbol remapping', $spaces) + if $opt_M && !/^confmagic\.h\b/; + + &mani_remove('config_h.SH') if /^config_h\.SH\b/ && !-f 'config_h.SH'; + &mani_remove('confmagic.h') if /^confmagic.h\b/ && !$opt_M; + + if ($opt_G) { # Want a GNU-like configure wrapper + &add_configure; + &mani_add('configure', 'GNU configure-like wrapper', $spaces) + if !/^configure\s/ && -f 'configure'; + } else { + &mani_remove('configure') if /^configure\s/ && !-f 'configure'; + } + + $* = 0; +} + +# Add file to MANIFEST.new, with properly indented comment +sub mani_add { + local($file, $comment, $spaces) = @_; + print "Adding $file to your $NEWMANI file...\n" unless $opt_s; + open(NEWMANI, ">>$NEWMANI") || warn "Can't add $file to $NEWMANI: $!\n"; + local($blank) = ' ' x ($spaces - length($file)); + print NEWMANI "${file}${blank}${comment}\n"; + close NEWMANI; +} + +# Remove file from MANIFEST.new +sub mani_remove { + local($file) = @_; + print "Removing $file from $NEWMANI...\n" unless $opt_s; + unless (open(NEWMANI, ">$NEWMANI.x")) { + warn "Can't create backup $NEWMANI copy: $!\n"; + return; + } + unless (open(OLDMANI, $NEWMANI)) { + warn "Can't open $NEWMANI: $!\n"; + return; + } + local($_); + while () { + print NEWMANI unless /^$file\b/ + } + close OLDMANI; + close NEWMANI; + rename("$NEWMANI.x", $NEWMANI) || + warn "Couldn't restore $NEWMANI from $NEWMANI.x\n"; +} + +# Copy GNU-like configure wrapper to the package root directory +sub add_configure { + if (-f "$MC/configure") { + print "Copying GNU configure-like front end...\n" unless $opt_s; + system "cp $MC/configure ./configure"; + `chmod +x configure`; + } else { + warn "Can't locate $MC/configure: $!\n"; + } +} + diff --git a/mcon/pl/depend.pl b/mcon/pl/depend.pl new file mode 100644 index 0000000..fc88f1a --- /dev/null +++ b/mcon/pl/depend.pl @@ -0,0 +1,138 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: depend.pl,v $ +;# Revision 3.0.1.3 1995/09/25 09:18:56 ram +;# patch59: new ?Y: directive to change unit layout +;# +;# Revision 3.0.1.2 1994/10/29 16:35:23 ram +;# patch36: added various escapes in strings for perl5 support +;# +;# Revision 3.0.1.1 1993/10/16 13:54:35 ram +;# patch12: added minimal support for ?P: lines (not ready yet) +;# +;# Revision 3.0 1993/08/18 12:10:21 ram +;# Baseline for dist 3.0 netwide release. +;# +;# Metaconfig-dependent part of the dependency extraction. +;# +# Process the ?W: lines +sub p_wanted { + # Syntax is ?W:: + local($active) = $_[0] =~ /^([^:]*):/; # Symbols to activate + local($look_symbols) = $_[0] =~ /:(.*)/; # When those are used + local(@syms) = split(/ /, $look_symbols); # Keep original spacing info + $active =~ s/\s+/\n/g; # One symbol per line + + # Concatenate quoted strings, so saying something like 'two words' will + # be introduced as one single symbol "two words". + local(@symbols); # Concatenated symbols to look for + local($concat) = ''; # Concatenation buffer + foreach (@syms) { + if (s/^\'//) { + $concat = $_; + } elsif (s/\'$//) { + push(@symbols, $concat . ' ' . $_); + $concat = ''; + } else { + push(@symbols, $_) unless $concat; + $concat .= ' ' . $_ if $concat; + } + } + + # Now record symbols in master and wanted tables + foreach (@symbols) { + $cmaster{$_} = undef; # Asks for look-up in C files + $cwanted{$_} = "$active" if $active; # Shell symbols to activate + } +} + +# Process the ?INIT: lines +sub p_init { + local($_) = @_; + print INIT "?$unit:", $_; # Wanted only if unit is loaded +} + +# Process the ?D: lines +sub p_default { + local($_) = @_; + s/^([A-Za-z_]+)=(.*)/\@if !$1\n%$1:$1=$2\n\@define $1\n\@end/ + && ($hasdefault{$1}++, print INIT $_); +} + +# Process the ?P: lines +sub p_public { + local($_) = @_; + local($csym); # C symbol(s) we're trying to look at + local($nosym); # List of symbol(s) which mustn't be wanted + local($cfile); # Name of file implementing csym (no .ext) + ($csym, $nosym, $cfile) = /([^()]+)\s*(\(.*\))\s*:\s*(\S+)/; + unless ($csym eq '' || $cfile eq '') { + # Add dependencies for each C symbol, of the form: + # -pick public + # and the file will be added to config.c whenever sym is wanted and + # none of the notdef symbols is wanted. + foreach $sym (split(' ', $csym)) { + $dependencies .= "\t-pick public $sym $cfile $nosym\n"; + } + } +} + +# Process the ?Y: lines +# Valid layouts are for now are: top, bottom, default. +# +# NOTA BENE: +# This routine relies on the $defined variable, a global variable set +# during the ?MAKE: processing, which lists all the defined symbols in +# the unit (the optional leading '+' for internal symbols has been removed +# if present). +# +# The routine fills up a %Layout table, indexed by symbol, yielding the +# layout imposed to this unit. That table will then be used later on when +# we sort wanted symbols for the Makefile. +sub p_layout { + local($_) = @_; + local($layout) = /^\s*(\w+)/; + $layout =~ tr/A-Z/a-z/; # Case is not significant for layouts + unless (defined $Lcmp{$layout}) { + warn "\"$file\", line $.: unknown layout directive '$layout'.\n"; + return; + } + foreach $sym (split(' ', $defined)) { + $Layout{$sym} = $Lcmp{$layout}; + } +} + +# Process the ?L: lines +# There should not be any '-l' in front of the library name +sub p_library { + &write_out("L:$_"); +} + +# Process the ?I: lines +sub p_include { + &write_out("I:$_"); +} + +# Write out line in file Extern.U. The information recorded there has the +# following prototypical format: +# ?symbol:L:inet bsd +# If 'symbol' is wanted, then 'inet bsd' will be added to $libswanted. +sub write_out { + local($_) = @_; + local($target) = $defined; # By default, applies to defined symbols + $target = $1 if s/^(.*)://; # List is qualified "?L:target:symbols" + local(@target) = split(' ', $target); + chop; + foreach $key (@target) { + print EXTERN "?$key:$_\n"; # EXTERN file defined in xref.pl + } +} + diff --git a/mcon/pl/eval.pl b/mcon/pl/eval.pl new file mode 100644 index 0000000..c4c1d76 --- /dev/null +++ b/mcon/pl/eval.pl @@ -0,0 +1,300 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: eval.pl,v $ +;# Revision 3.0.1.1 1995/01/30 14:48:37 ram +;# patch49: removed old "do name()" routine call constructs +;# +;# Revision 3.0 1993/08/18 12:10:22 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# The built-in interpreter +;# +package interpreter; + +# States used by our interpeter -- in sync with @Keep +sub main'init_keep { + # Status in which we keep lines -- $Keep[$status] + @Keep = (0, 1, 1, 0, 1); + + # Available status ($status) + $SKIP = 0; + $IF = 1; + $ELSE = 2; + $NOT = 3; + $OUT = 4; +} + +# Priorities for operators -- magic numbers :-) +sub main'init_priority { + $Priority{'&&'} = 4; + $Priority{'||'} = 3; +} + +# Initializes the state stack of the interpreter +sub main'init_interp { + @state = (); + push(@state, $OUT); +} + +# Print error messages -- asssumes $unit and $. correctly set. +sub error { + warn "\"$main'file\", line $.: @_.\n"; +} + +# If some states are still in the stack, warn the user +sub main'check_state { + &error("one statement pending") if $#state == 1; + &error("$#state statements pending") if $#state > 1; +} + +# Add a value on the stack, modified by all the monadic operators. +# We use the locals @val and @mono from eval_expr. +sub push_val { + local($val) = shift(@_); + while ($#mono >= 0) { + # Cheat... the only monadic operator is '!'. + pop(@mono); + $val = !$val; + } + push(@val, $val); +} + +# Execute a stacked operation, leave result in stack. +# We use the locals @val and @op from eval_expr. +# If the value stack holds only one operand, do nothing. +sub execute { + return unless $#val > 0; + local($op) = pop(@op); + local($val1) = pop(@val); + local($val2) = pop(@val); + push(@val, eval("$val1 $op $val2") ? 1: 0); +} + +# Given an operator, either we add it in the stack @op, because its +# priority is lower than the one on top of the stack, or we first execute +# the stacked operations until we reach the end of stack or an operand +# whose priority is lower than ours. +# We use the locals @val and @op from eval_expr. +sub update_stack { + local($op) = shift(@_); # Operator + if (!$Priority{$op}) { + &error("illegal operator $op"); + return; + } else { + if ($#val < 0) { + &error("missing first operand for '$op' (diadic operator)"); + return; + } + # Because of the special behaviour of do-SUBR with the while modifier, + # I'm using a while-BLOCK construct. I consider this to be a bug of perl + # 4.0 PL19, although it is clearly documented in the man page. + while ( + $Priority{$op[$#op]} > $Priority{$op} # Higher priority op + && $#val > 0 # At least 2 values + ) { + &execute; # Execute an higher priority stacked operation + } + push(@op, $op); # Everything at higher priority has been executed + } +} + +# This is the heart of our little interpreter. Here, we evaluate +# a logical expression and return its value. +sub eval_expr { + local(*expr) = shift(@_); # Expression to parse + local(@val) = (); # Stack of values + local(@op) = (); # Stack of diadic operators + local(@mono) =(); # Stack of monadic operators + local($tmp); + $_ = $expr; + while (1) { + s/^\s+//; # Remove spaces between words + # The '(' construct + if (s/^\(//) { + &push_val(&eval_expr(*_)); + # A final '\' indicates an end of line + &error("missing final parenthesis") if !s/^\\//; + } + # Found a ')' or end of line + elsif (/^\)/ || /^$/) { + s/^\)/\\/; # Signals: left parenthesis found + $expr = $_; # Remove interpreted stuff + &execute() while $#val > 0; # Executed stacked operations + while ($#op >= 0) { + $_ = pop(@op); + &error("missing second operand for '$_' (diadic operator)"); + } + return $val[0]; + } + # A perl statement '{{' + elsif (s/^\{\{//) { + if (s/^(.*)\}\}//) { + &push_val((system + ('perl','-e', "if ($1) {exit 0;} else {exit 1;}" + ))? 0 : 1); + } else { + &error("incomplete perl statement"); + } + } + # A shell statement '{' + elsif (s/^\{//) { + if (s/^(.*)\}//) { + &push_val((system + ("if $1 >/dev/null 2>&1; then exit 0; else exit 1; fi" + ))? 0 : 1); + } else { + &error("incomplete shell statement"); + } + } + # Operator '||' and '&&' + elsif (s/^(\|\||&&)//) { + $tmp = $1; # Save for perl5 (Dataloaded update_stack) + &update_stack($tmp); + } + # Unary operator '!' + elsif (s/^!//) { + push(@mono,'!'); + } + # Everything else is a test for a defined value + elsif (s/^([\?%]?\w+)//) { + $tmp = $1; + # Test for wanted + if ($tmp =~ s/^\?//) { + &push_val(($main'symwanted{$tmp})? 1 : 0); + } + # Test for conditionally wanted + elsif ($tmp =~ s/^%//) { + &push_val(($main'condwanted{$tmp})? 1 : 0); + } + # Default: test for definition (see op @define) + else { + &push_val(( + $main'symwanted{$tmp} || + $main'cmaster{$tmp} || + $main'userdef{$tmp}) ? 1 : 0); + } + } + # An error occured -- we did not recognize the expression + else { + s/^([^\s\(\)\{\|&!]+)//; # Skip until next meaningful char + } + } +} + +# Given an expression in a '@' command, returns a boolean which is +# the result of the evaluation. Evaluate is collecting all the lines +# in the expression into a single string, and then calls eval_expr to +# really evaluate it. +sub evaluate { + local($val); # Value returned + local($expr) = ""; # Expression to be parsed + chop; + while (s/\\$//) { # While end of line escaped + $expr .= $_; + $_ = ; # Fetch next line + unless ($_) { + &error("EOF in expression"); + last; + } + chop; + } + $expr .= $_; + while ($expr ne '') { + $val = &eval_expr(*expr); # Expression will be modified + # We return from eval_expr either when a closing parenthisis + # is found, or when the expression has been fully analysed. + &error("extra closing parenthesis ignored") if $expr ne ''; + } + $val; +} + +# Given a line, we search for commands (lines starting with '@'). +# If there is no command in the line, then we return the boolean state. +# Otherwise, the command is analysed and a new state is computed. +# The returned value of interpret is 1 if the line is to be printed. +sub main'interpret { + local($value); + local($status) = $state[$#state]; # Current status + if (s|^\s*@\s*(\w+)\s*(.*)|$2|) { + local($cmd) = $1; + $cmd =~ y/A-Z/a-z/; # Canonicalize to lower case + # The 'define' command + if ($cmd eq 'define') { + chop; + $userdef{$_}++ if $Keep[$status]; + return 0; + } + # The 'if' command + elsif ($cmd eq 'if') { + # We always evaluate, in order to find possible errors + $value = &evaluate($_); + if (!$Keep[$status]) { + # We have to skip until next 'end' + push(@state, $SKIP); # Record structure + return 0; + } + if ($value) { # True + push(@state, $IF); + return 0; + } else { # False + push(@state, $NOT); + return 0; + } + } + # The 'else' command + elsif ($cmd eq 'else') { + &error("expression after 'else' ignored") if /\S/; + $state[$#state] = $SKIP if $state[$#state] == $IF; + return 0 if $state[$#state] == $SKIP; + if ($state[$#state] == $OUT) { + &error("unexpected 'else'"); + return 0; + } + $state[$#state] = $ELSE; + return 0; + } + # The 'elsif' command + elsif ($cmd eq 'elsif') { + # We always evaluate, in order to find possible errors + $value = &evaluate($_); + $state[$#state] = $SKIP if $state[$#state] == $IF; + return 0 if $state[$#state] == $SKIP; + if ($state[$#state] == $OUT) { + &error("unexpected 'elsif'"); + return 0; + } + if ($value) { # True + $state[$#state] = $IF; + return 0; + } else { # False + $state[$#state] = $NOT; + return 0; + } + } + # The 'end' command + elsif ($cmd eq 'end') { + &error("expression after 'end' ignored") if /\S/; + pop(@state); + &error("unexpected 'end'") if $#state < 0; + return 0; + } + # Unknown command + else { + &error("unknown command '$cmd'"); + return 0; + } + } + $Keep[$status]; +} + +package main; + diff --git a/mcon/pl/extract.pl b/mcon/pl/extract.pl new file mode 100644 index 0000000..385b751 --- /dev/null +++ b/mcon/pl/extract.pl @@ -0,0 +1,109 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: extract.pl,v $ +;# Revision 3.0.1.1 1994/05/06 15:21:43 ram +;# patch23: now saves the last unit line value for metalint +;# +;# Revision 3.0 1993/08/18 12:10:22 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# This is the heart of the dependency extractor. Each control line is +;# processed. The dependencies are stored in $dependencies. +;# +# Extract dependencies from units held in @ARGV +sub extract_dependencies { + local($proc); # Procedure used to handle a ctrl line + local($file); # Current file scanned + local($dir, $unit); # Directory and unit's name + local($old_version) = 0; # True when old-version unit detected + local($mc) = "$MC/U"; # Public metaconfig directory + local($line); # Last processed line for metalint + + printf "Extracting dependency lists from %d units...\n", $#ARGV+1 + unless $opt_s; + + chdir $WD; # Back to working directory + &init_extraction; # Initialize extraction files + $dependencies = ' ' x (50 * @ARGV); # Pre-extend + $dependencies = ''; + + # We do not want to use the <> construct here, because we need the + # name of the opened files (to get the unit's name) and we want to + # reset the line number for each files, and do some pre-processing. + + file: while ($file = shift(@ARGV)) { + close FILE; # Reset line number + $old_version = 0; # True if unit is an old version + if (open(FILE, $file)) { + ($dir, $unit) = ('', $file) + unless ($dir, $unit) = ($file =~ m|(.*)/(.*)|); + $unit =~ s|\.U$||; # Remove extension + } else { + warn("Can't open $file.\n"); + } + # If unit is in the standard public directory, keep only the unit name + $file = "$unit.U" if $dir eq $mc; + print "$dir/$unit.U:\n" if $opt_d; + line: while () { + $line = $_; # Save last processed unit line + if (s/^\?([\w\-]+)://) { # We may have found a control line + $proc = $Depend{$1}; # Look for a procedure to handle it + unless ($proc) { # Unknown control line + $proc = $1; # p_unknown expects symbol in '$proc' + eval '&p_unknown'; # Signal error (metalint only) + next line; # And go on next line + } + # Long lines may be escaped with a final backslash + $_ .= &complete_line(FILE) if s/\\\s*$//; + # Run macros substitutions + s/%)); + next file; + } + } + } continue { + warn(" Warning: $file is a pre-3.0 version.\n") if $old_version; + &$ending($line) if $ending; # Post-processing for metalint + } + + &end_extraction; # End the extraction process +} + +# The first line was escaped with a final \ character. Every following line +# is to be appended to it (until we found a real \n not escaped). Note that +# the leading spaces of the continuation line are removed, so any space should +# be added before the former \ if needed. +sub complete_line { + local($file) = @_; # File where lines come from + local($_); + local($read) = ''; # Concatenation of all the continuation lines found + while (<$file>) { + s/^\s+//; # Remove leading spaces + if (s/\\\s*$//) { # Still followed by a continuation line + $read .= $_; + } else { # We've reached the end of the continuation + return $read . $_; + } + } +} + diff --git a/mcon/pl/files.pl b/mcon/pl/files.pl new file mode 100644 index 0000000..9e6bd08 --- /dev/null +++ b/mcon/pl/files.pl @@ -0,0 +1,109 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: files.pl,v $ +;# Revision 3.0.1.2 1994/10/29 16:35:48 ram +;# patch36: added user-defined file extension support for lookups +;# +;# Revision 3.0.1.1 1993/10/16 13:54:55 ram +;# patch12: now skip confmagic.h when -M option is used +;# +;# Revision 3.0 1993/08/18 12:10:23 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# These two arrays record the file names of the files which may (or may not) +;# contain shell or C symbols known by metaconfig. +;# @SHlist records the .SH files +;# @clist records the C-like files (i.e. .[chyl]) +;# +;# The extensions are actually computed dynamically from the definitions held +;# in the $cext and $shext variables from .package so that people can add new +;# extensions to their packages. For instance, perl5 adds .xs files holding +;# some C symbols. +;# +# Extract filenames from manifest +sub extract_filenames { + &build_filext; # Construct &is_cfile and &is_shfile + print "Extracting filenames (C and SH files) from $NEWMANI...\n" + unless $opt_s; + open(NEWMANI,$NEWMANI) || die "Can't open $NEWMANI.\n"; + local($file); + while () { + ($file) = split(' '); + next if $file eq 'config_h.SH'; # skip config_h.SH + next if $file eq 'Configure'; # also skip Configure + next if $file eq 'confmagic.h' && $opt_M; + push(@SHlist, $file) if &is_shfile($file); + push(@clist, $file) if &is_cfile($file); + } +} + +# Construct two file identifiers based on the file suffix: one for C files, +# and one for SH files (using the $cext and $shext variables) defined in +# the .package file. +# The &is_cfile and &is_shfile routine may then be called to known whether +# a given file is a candidate for holding C or SH symbols. +sub build_filext { + &build_extfun('is_cfile', $cext, '.c .h .y .l'); + &build_extfun('is_shfile', $shext, '.SH'); +} + +# Build routine $name to identify extensions listed in $exts, ensuring +# that $minimum is at least matched (both to be backward compatible with +# older .package and because it is really the minimum requirred). +sub build_extfun { + local($name, $exts, $minimum) = @_; + local(@single); # Single letter dot extensions (may be grouped) + local(@others); # Other extensions + local(%seen); # Avoid duplicate extensions + foreach $ext (split(' ', "$exts $minimum")) { + next if $seen{$ext}++; + if ($ext =~ s/^\.(\w)$/$1/) { + push(@single, $ext); + } else { + # Convert into perl's regexp + $ext =~ s/\./\\./g; # Escape . + $ext =~ s/\?/./g; # ? turns into . + $ext =~ s/\*/.*/g; # * turns into .* + push(@others, $ext); + } + } + local($fn) = &q(< 1; + + # Reset those once for every unit + # (assuming there is only one depend line) + $h_section = 0; # 0 = no ?H: yet, 1 = in ?H:, 2 = ?H:. seen + $h_section_warned = 0; # Whether we warned about terminated ?H: section + $wiped_unit = 0; # Whether macros like " will be wiped + undef %condseen; + undef %depseen; + undef %defseen; + undef %tempseen; + undef %symset; + undef %symused; + undef %csym; + undef %ssym; + undef %hcsym; + undef %hssym; + undef %lintuse; + undef %lintuse_used; + undef %lintseen; + undef %lintchange; + undef %lintchange_used; + undef %lintextern; + undef %lintcreated; + undef %fileseen; + undef %lintseen_used; + undef %filetmp; + undef %filecreated; + undef %linthere; + undef %lintnothere; + undef %lintfused; + undef %lintsdesc; + undef %lintsdesc_used; + undef %lintcdesc; + undef %lintcdesc_used; + undef %lintset; + undef %lintset_used; + + s|^\s*||; # Remove leading spaces + chop; + s/:(.*)//; + @dep = split(' ', $1); # Dependencies + @ary = split(' '); # Locally defined symbols + local($nowarn); # True when +Special is seen + foreach $sym (@ary) { + # Ignore "internal use only" symbols as far as metalint goes. + # Actually, we record the presence of a '+' in front of a special + # unit name and use that as a hint to suppress the presence of that + # special unit in the defined symbol section. + $nowarn = ($sym =~ s/^\+//); + + # We record for each shell symbol the list of units which claim to make + # it, so as to report duplicates. + if ($sym =~ /^[_a-z]/ || $Except{$sym}) { + $shmaster{"\$$sym"} .= "$unit "; + ++$defseen{$sym}; + } else { + warn "$where: special unit '$sym' should not be listed as made.\n" + unless $sym eq $unit || $nowarn; + } + } + # Record dependencies for later perusal + push(@make, join(' ', @ary) . ':' . join(' ', @dep)); + foreach $sym (@dep) { + if ($sym =~ /^\+[_A-Za-z]/) { + $sym =~ s|^\+||; + ++$condseen{$sym}; # Conditional symbol wanted + ++$condsym{$sym}; # %condsym has a greater lifetime + } else { + ++$depseen{$sym}; # Full dependency + } + + # Each 'wanted' special unit (i.e. one starting with a capital letter) + # is remembered, so as to prevent exported symbols from being reported + # as "undefined". For instance, Myread exports $dflt, $ans and $rp. + $shspecial{$unit} .= "$sym " if substr($sym, 0, 1) =~ /^[A-Z]/; + + # Record all known dependencies (special or not) for this unit + $shdepend{$unit} .= "$sym "; + + # Remember where wanted symbol is defined, so that we can report + # stale dependencies later on (i.e. dependencies which refer to non- + # existent symbols). + $symdep{$sym} .= "$unit "; # This symbol is wanted here + } + # Make sure we do not want a symbol twice, nor do we want it once as a full + # dependency and once as a conditional dependency. + foreach $sym (@dep) { + if ($sym =~ /^\+[_A-Za-z]/) { + $sym =~ s|^\+||; + warn "$where: '+$sym' is listed $condseen{$sym} times.\n" + if $condseen{$sym} > 1; + $condseen{$sym} = 1 if $condseen{$sym}; # Avoid multiple messages + } else { + warn "$where: '$sym' is listed $depseen{$sym} times.\n" + if $depseen{$sym} > 1; + $depseen{$sym} = 1 if $depseen{$sym}; # Avoid multiple messages + } + warn "$where: '$sym' listed as both conditional and full dependency.\n" + if $condseen{$sym} && $depseen{$sym}; + } + # Make sure every unit "inherits" from the symbols exported by 'Init'. + $shspecial{$unit} .= 'Init ' unless $shspecial{$unit} =~ /Init\b/; +} + +# Process the ?O: line +sub p_obsolete { + local($_) = @_; + chop; + $Obsolete{"$unit.U"} = $_; # Message to print if unit is used +} + +# Process the ?S: lines +sub p_shell { + local($_) = @_; + local($where) = "\"$file\", line $. (?S:)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + if (/^(\w+)\s*(\(.*\))*\s*:/) { + &check_last_declaration; + $s_symbol = $1; + print " ?S: $s_symbol\n" if $opt_d; + # Make sure we do not define symbol twice and that the symbol is indeed + # listed in the ?MAKE: line. + warn "$where: duplicate description for variable '\$$s_symbol'.\n" + if $ssym{$s_symbol}++; + unless ($defseen{$s_symbol}) { + warn "$where: variable '\$$s_symbol' is not listed " . + "on ?MAKE: line.\n" unless $lintseen{$s_symbol}; + $lintseen_used{$s_symbol}++ if $lintseen{$s_symbol}; + } + # Deal with obsolete symbol list (enclosed between parenthesis) + &record_obsolete("\$$_") if /\(/; + } else { + unless ($s_symbol) { + warn "$where: syntax error in ?S: construct.\n"; + return; + } + } + + m|^\.\s*$| && ($s_symbol = ''); # End of comment +} + +# Process the ?C: lines +sub p_c { + local($_) = @_; + local($where) = "\"$file\", line $. (?C:)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + # The previous ?H: section, if present, must have been closed + if ($h_section && $h_section != 2) { + warn "$where: unclosed ?H: section.\n"; + } + $h_section = 0; + if (s/^(\w+)\s*~\s*(\S+)\s*(.*):/$1 $3:/) { + &check_last_declaration; + $c_symbol = $2; # Alias for definition in config.h + # Record symbol definition for further duplicate spotting + $cmaster{$1} .= "$unit " unless $csym{$1}; + print " ?C: $1 ~ $c_symbol\n" if $opt_d; + # Make sure we do not define symbol twice + warn "$where: duplicate description for symbol '$1'.\n" + if $csym{$1}++; + # Deal with obsolete symbol list (enclosed between parenthesis) + &record_obsolete("$_") if /\(/; + } elsif (/^(\w+)\s*(\(.*\))*\s*:/) { + &check_last_declaration; + $c_symbol = $1; + # Record symbol definition for further duplicate spotting + $cmaster{$c_symbol} .= "$unit " unless $csym{$c_symbol}; + print " ?C: $c_symbol\n" if $opt_d; + # Make sure we do not define symbol twice + warn "$where: duplicate description for symbol '$c_symbol'.\n" + if $csym{$c_symbol}++; + # Deal with obsolete symbol list (enclosed between parenthesis) + &record_obsolete("$_") if /\(/; + } else { + unless ($c_symbol) { + warn "$where: syntax error in ?C: construct.\n"; + return; + } + } + + s|^(\w+)|?$c_symbol:/* $1| || # Start of comment + (s|^\.\s*$|?$c_symbol: */\n| && ($c_symbol = '', 1)) || # End of comment + s|^(.*)|?$c_symbol: *$1|; # Middle of comment +} + +# Process the ?H: lines +sub p_config { + local($_) = @_; + local($where) = "\"$file\", line $. (?H)" unless $where; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + unless ($h_section){ # Entering ?H: section + $h_section = 1; + $h_section_warned = 0; + } + if ($h_section == 2) { + warn "$where: section was already terminated by '?H:.'.\n" + unless $h_section_warned++; + return; + } + if ($_ eq ".\n") { + $h_section = 2; # Marks terminated ?H: section + return; + } + (my $constraint) = m/^\?(\w+):/; + s/^\?\w+://; # Remove leading '?var:' constraint + if (m|^#\$(\w+)\s+(\w+).*\$(\w+)|) { + # Case: #$d_var VAR "$var" + warn "$where: symbol '$2' was already defined.\n" if $hcsym{$2}++; + &check_definition("$1"); + &check_definition("$3"); + } elsif (m|^#define\s+(\w+)\((.*)\)\s+\$(\w+)|) { + # Case: #define VAR(x) $var + warn "$where: symbol '$1' was already defined.\n" if $hcsym{$1}++; + &check_definition("$3"); + } elsif (m|^#\$define\s+(\w+)|) { + # Case: #$define VAR + warn "$where: symbol '$1' was already defined.\n" if $hcsym{$1}++; + } elsif (m|^#\$(\w+)\s+(\w+)|) { + # Case: #$d_var VAR + warn "$where: symbol '$2' was already defined.\n" if $hcsym{$2}++; + &check_definition("$1"); + } elsif (m|^#define\s+(\w+).*\$(\w+)|) { + # Case: #define VAR "$var" + warn "$where: symbol '$1' was already defined.\n" if $hcsym{$1}++; + &check_definition("$2"); + } elsif (m|^#define\s+(\w+)|) { + # Case: #define VAR + $hcsym{$1}++; # Multiple occurrences may be legitimate + } else { + if (/^#/) { + warn "$where: uncommon cpp line should be protected with '?%<:'.\n" + if $constraint eq ''; + } elsif (!/^\@(if|elsif|else|end)\b/) { + warn "$where: line should not be listed here but in '?C:'.\n"; + } + } + + # Ensure the constraint is either %< (unit base name) or a known symbol. + if ($constraint ne '' && $constraint ne $unit) { + warn "$where: constraint '$constraint' is an unknown symbol.\n" + unless $csym{$constraint} || $ssym{$constraint}; + } +} + +# Process the ?M: lines +sub p_magic { + local($_) = @_; + local($where) = "\"$file\", line $. (?M)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + if (/^(\w+):\s*([\w\s]*)\n$/) { + &check_last_declaration; + $m_symbol = $1; + $msym{$1} = "$unit"; # p_wanted ensure we do not define symbol twice + $mdep{$1} = $2; # Save C symbol dependencies + &p_wanted("$unit:$m_symbol"); + } else { + unless ($m_symbol) { + warn "$where: syntax error in ?M: construct.\n"; + return; + } + } + m|^\.\s*$| && ($m_symbol = ''); # End of comment +} + +# Process the ?INIT: lines +sub p_init { + local($_) = @_; + local($where) = "\"$file\", line $. (?INIT)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + &p_body($_, 1); # Pass it along as a body line (leading ?INIT: removed) +} + +# Process the ?D: lines +sub p_default { + local($_) = @_; + local($where) = "\"$file\", line $. (?D)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + local($sym) = /^(\w+)=/; + $hasdefault{$sym}++; + unless ($defseen{$sym}) { + warn "$where: variable '\$$sym' is not listed " . + "on ?MAKE: line.\n" unless $lintseen{$sym}; + $lintseen_used{$sym}++ if $lintseen{$sym}; + } + s/^\w+=//; # So that p_body does not consider variable as being set + &p_body($_, 1); # Pass it along as a body line (leading ?D: + var removed) +} + +# Process the ?V: lines +sub p_visible { + local($where) = "\"$file\", line $. (?V)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + + # A visible symbol can freely be manipulated by any unit which includes the + # current unit in its dependencies. Symbols before ':' may be only used for + # reading while symbols after ':' may be used for both reading and writing. + # The array %shvisible records symbols as keys. Read-only symbols have a + # leading '$' while read-write symbols are recorded as-is. + + unless (substr($unit, 0, 1) =~ /^[A-Z]/) { + warn "$where: visible declaration in non-special unit ignored.\n"; + return; + } + local($read_only) = $_[0] =~ /^([^:]*):?/; + local($read_write) = $_[0] =~ /:(.*)/; + local(@rsym) = split(' ', $read_only); + local(@rwsym) = split(' ', $read_write); + local($w); + foreach (@rsym) { # Read only symbols + warn "$where: wanted variable '\$$_' made visible.\n" if &wanted($_); + warn "$where: defined variable '\$$_' made visible.\n" + if &defined($_) && !$lintseen{$_}; + $w = $shvisible{"\$$_"}; + warn "$where: variable '\$$_' already made visible by unit $w.\n" if $w; + $w = $shvisible{$_}; + warn "$where: variable '\$$_' already read-write visible in $w.\n" if $w; + $shvisible{"\$$_"} = $unit unless $w; + } + foreach (@rwsym) { # Read/write symbols + warn "$where: wanted variable '\$$_' made visible.\n" if &wanted($_); + warn "$where: defined variable '\$$_' made visible.\n" + if &defined($_) && !$lintseen{$_}; + $w = $shvisible{$_}; + warn "$where: variable '\$$_' already made visible by unit $w.\n" if $w; + $w = $shvisible{"\$$_"}; + warn "$where: variable '\$$_' already read-only visible in $w.\n" if $w; + $shvisible{$_} = $unit unless $w; + } +} + +# Process the ?W: lines +sub p_wanted { + local($where) = "\"$file\", line $. (?W)" unless $where; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + # Somehow, we should check that none of the symbols to activate are stale + # ones, i.e. they all finally resolve to some known target -- FIXME + local($active) = $_[0] =~ /^([^:]*):/; # Symbols to activate + local($look_symbols) = $_[0] =~ /:(.*)/; # When those are used + local(@symbols) = split(' ', $look_symbols); + # A "?W:symbol" line asks metaconfig to define 'symbol' in the wanted file + # as a C target iff that word is found within the sources. This is mainly + # intended for the built-in interpreter to check for definedness. + local($w); + foreach (@symbols) { + warn "$where: variable '\$$_' already wanted.\n" if &wanted($_); + warn "$where: variable '\$$_' also locally defined.\n" if &defined($_); + $w = $cwanted{$_}; + if ($msym{$_} ne '') { + warn "$where: symbol '$_' already listed on a ?M: line in '$w'.\n" + if $w; + } else { + warn "$where: variable '\$$_' already listed on a ?W: line in '$w'.\n" + if $w; + } + $cwanted{$_} = $unit unless $w; + } +} + +# Process the ?Y: lines +sub p_layout { + local($where) = "\"$file\", line $. (?Y)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + local($_) = @_; + chop; + s/^\s+//; + tr/A-Z/a-z/; # Layouts are record in lowercase + warn "$where: unknown layout directive '$_'.\n" + unless defined $Lcmp{$_}; +} + +# Process the ?P: lines +sub p_public { + # FIXME +} + +# Process the ?L: lines +sub p_library { + # There should not be any '-l' in front of the library name + # FIXME +} + +# Process the ?I: lines +sub p_include { + # FIXME +} + +# Process the ?T: lines +sub p_temp { + local($where) = "\"$file\", line $. (?T:)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + local($_) = @_; + local(@sym) = split(' ', $_); + foreach $sym (@sym) { + warn "$where: temporary symbol '\$$sym' multiply declared.\n" + if $tempseen{$sym}++ == 1; + $tempmaster{$sym} .= "$unit " if $tempseen{$sym} == 1; + } +} + +# Process the ?F: lines +sub p_file { + local($where) = "\"$file\", line $. (?F:)"; + warn "$where: directive should come after ?MAKE declarations.\n" + unless $makeseen{$unit}; + local($_) = @_; + local(@files) = split(' ', $_); + local($uufile); # Name of file produced in the UU directory + local($tmpfile); # Name of a temporary file + # We care only about UU files, i.e. files produced in the UU directory + # and which are identified by the convention ./filename. Files !filename + # are not produced, i.e. they are temporary or externally provided. + # The %prodfile table records all the files produced, so we may detect + # inconsistencies between units, while %filemaster records the (first) unit + # defining a given UU file to make sure that (special) unit is named in the + # dependency line when that UU file if used. Duplicates will be caught in + # the sanity check phase thanks to %prodfile. + # Temporary files are recorded in %filesetin, so that we may later compare + # the list with the UU files to detect possible overwrites. + my $is_special = substr($unit, 0, 1) =~ /^[A-Z]/; + foreach $file (@files) { + warn "$where: produced file '$file' multiply declared.\n" + if $fileseen{$file}++ == 1; + if (($tmpfile = $file) =~ s/^!//) { + $filetmp{$tmpfile} = 'x '; + $filesetin{$tmpfile} .= "$unit " if $fileseen{$file} == 1; + next; # Is not a UU file for sure, so skip + } + $prodfile{$file} .= "$unit " if $fileseen{$file} == 1; + ($uufile = $file) =~ s|^\./(\S+)$|$1|; + next if $file eq $uufile; # Don't care about non-UU files + unless ($is_special || $lintcreated{$uufile}) { + warn "$where: UU file '$uufile' in non-special unit ignored.\n"; + delete $lintcreated{$uufile}; # Detect spurious LINT + next; + } + delete $lintcreated{$uufile} if !$is_special; # Detect spurious LINT + $filemaster{$uufile} = $unit unless defined $filemaster{$uufile}; + $filecreated{$uufile} = 'a'; # Will be automagically incremented + } +} + +# Process the ?LINT: lines +sub p_lint { + local($_) = @_; + local(@sym); + local($where) = "\"$file\", line $. (?LINT:)"; + s/^\s+//; # Strip leading spaces + unless ($makeseen{$unit}) { + warn "$where: directive should come after ?MAKE declarations.\n" + unless m/^empty/; + } + if (s/^set//) { # Listed variables are set + @sym = split(' ', $_); # Spurious ones will be flagged + foreach (@sym) { + $lintset{$_}++; # Shell variable set + } + } elsif (s/^desc\w+//) { # Listed shell variables are described + @sym = split(' ', $_); # Spurious ones will be flagged + foreach (@sym) { + $lintsdesc{$_}++; # Shell variable described + } + } elsif (s/^creat\w+//) { # Listed created files in regular units + @sym = split(' ', $_); + foreach (@sym) { + $lintcreated{$_}++; # Persistent UU file created + } + } elsif (s/^known//) { # Listed C variables are described + @sym = split(' ', $_); # Spurious ones will be flagged + foreach (@sym) { + $lintcdesc{$_}++; # C symbol described + } + } elsif (s/^change//) { # Shell variable ok to be changed + @sym = split(' ', $_); # Spurious ones will be flagged + foreach (@sym) { + $lintchange{$_}++; # Do not complain if changed + } + } elsif (s/^extern//) { # Variables known to be externally defined + @sym = split(' ', $_); + foreach (@sym) { + $lintextern{$_}++; # Do not complain if used in a ?H: line + } + } elsif (s/^usefile//) { # Files marked as being used + @sym = split(' ', $_); + foreach (@sym) { + $lintfused{$_}++; + } + } elsif (s/^use//) { # Variables declared as used by unit + @sym = split(' ', $_); # Spurious ones will be flagged + foreach (@sym) { + $lintuse{$_}++; # Do not complain if on ?MAKE and not used + } + } elsif (s/^def\w+//) { # Listed variables are defined + @sym = split(' ', $_); # Spurious ones will be flagged + foreach (@sym) { + $lintseen{$_}++; # Shell variable defined in this unit + } + } elsif (m/^empty/) { # Empty unit file + $lintempty{$unit}++; + } elsif (m/^unclosed/) { # Unclosed here-documents + @sym = split(' ', $_); + foreach (@sym) { + $linthere{$_}++; + } + } elsif (s/^nothere//) { # Not a here-document name + @sym = split(' ', $_); + foreach (@sym) { + $lintnothere{$_}++; + } + } elsif (s/^nocomment//) { # OK if leading unit ': comment' missing + $lintnocomment{$unit}++; + } else { + local($where) = "\"$file\", line $." unless $where; + local($word) = /^(\w+)/; + warn "$where: unknown LINT request '$word' ignored.\n"; + } +} + +# Process the body of the unit +sub p_body { + return unless $makeseen{$unit}; + local($_, $special) = @_; + local($where) = "\"$file\", line $." unless $where; + # Ensure there is no control line in the body of the unit + local($control) = /^\?([\w\-]+):/; + local($known) = $control ? $Depend{$control} : ""; + warn "$where: control sequence '?$control:' ignored within body.\n" + if $known && !/^\?X:|^\?LINT:/; + if (s/^\?LINT://) { # ?LINT directives allowed within body + $_ .= &complete_line(FILE) if s/\\\s*$//; + &p_lint($_); + } + return if $known; + # First non-special line should be a ': description' line + unless ($special || /^\?/ || /^@/) { + warn "$where: first body line should be a general ': description'.\n" + unless $past_first_line++ || $lintnocomment{$unit} || /^:\s+\w+/; + } + # Ensure ': comment' lines do not hold any meta-character + # We assume ":)" introduces a case statement. + if (/^\s*:/ && !/^\s*:\)/) { + warn "$where: missing space after ':' to make it a comment.\n" + unless /^\s*:\s/; + s/\\.//g; # simplistic ignoring of "escaped" chars + s/".*?"//g; + s/'.*?'//g; + if ($wiped_unit) { + s/<\$\w+>//g; + foreach my $wipe (@wiping) { + s/<$wipe>//g; + } + } + warn "$where: found unquoted meta-character $1 on comment line.\n" + while s/([`()<>;&\{\}\|])//g; + warn "$where: found dangling quote on ':' comment line.\n" if /['"]/; + return; + } + # Ingnore interpreted lines and their continuations + if ($last_interpreted) { + return if /\\$/; # Still part of the interpreted line + $last_interpreted = 0; # End of interpreted lines + return; # This line was the last interpreted + } + # Look for interpreted lines and ignore them + if (/^@/) { + $last_interpreted = /\\$/; # Set flag if line is continued + return; # And skip this line + } + # Detect ending of "here" documents + if ($heredoc ne '' && $_ eq "$heredoc\n") { + $heredoc = ''; # Close here-document + $heredoc_nosubst = 0; + return; + } + # Detect beginning of "here" document + my $began_here = 0; + if ($heredoc eq '') { + if (/<<\s*''/) { + # Discourage it, because we're not processing those... + warn "$where: empty here-document name discouraged.\n"; + } elsif (/<<\s*'([^']+)'/ && !$lintnothere{$1}) { + $heredoc = $1; + $heredoc_nosubst = 1; + $began_here++; + } elsif (/<<\s*(\S+)/ && !$lintnothere{$1}) { + $heredoc = $1; + $began_here++; + } + # Continue, as we need to look for possible ">file" on the same line + # as a possible here document, as in "cat <file". + } else { + return if $heredoc_nosubst; # Completely opaque to interpretation + } + $heredoc_line = $. if $began_here; + + # If we've just entered a here document and we're generating a file + # that is exported by the unit, then we need to monitor the variables + # used to make sure there's no missing dependency. + $heredoc_nosubst = 0 + if $began_here && />>?\s*(\S+)/ && $filemaster{$1} eq $unit; + + # From now on, do all substitutes with ':' since it would be dangerous + # to remove things plain and simple. It could yields false matches + # afterwards... + + my $check_vars = 1; + $chek_vars = 0 if $heredoc_nosubst && !$began_here; + + # Record any attempt made to set a shell variable + local($sym); + while ($check_vars && s/(\W?)(\w+)=/$1:/) { + my $before = $1; + $sym = $2; + next unless $before eq '' || $before =~ /["'` \t]/; + next if $sym =~ /^\d+/; # Ignore $1 and friends + $symset{$sym}++; # Shell variable set + # Not part of a $cc -DWHATEVER line and not made nor temporary + unless ($sym =~ /^D/ || &defined($sym)) { + if (&wanted($sym)) { + warn "$where: variable '\$$sym' is changed.\n" + unless $lintchange{$sym}; + $lintchange_used{$sym}++ if $lintchange{$sym}; + } else { + # Record that the variable is set but not listed locally. + if ($shset{$unit} !~ /\b$sym\b/) { + $shset{$unit} .= "$sym " unless $lintchange{$sym}; + $lintchange_used{$sym}++ if $lintchange{$sym}; + } + } + } + } + # Now look at the shell variables used: can be $var or ${var} + local($var); + local($line) = $_; + while ($check_vars && s/\$\{?(\w+)\}?/$1/) { + $var = $1; + next if $var =~ /^\d+/; # Ignore $1 and friends + # Record variable as undeclared but do not issue a message right now. + # That variable could be exported via ?V: (as $dflt in Myread) or be + # defined by a special unit (like $inlibc by unit Inlibc). + $shunknown{$unit} .= "$var " unless + $lintextern{$var} || &declared($var) || + $shunknown{$unit} =~ /\b$var\b/; + $shused{$unit} .= "\$$var " unless $shused{$unit} =~ /\$$var\b/; + } + + return if $heredoc ne '' && !$began_here; # Still in here-document + + # Now look at private files used by the unit (./file or ..../UU/file) + # We look at things like '. ./myread' and `./loc ...` as well as "< file" + local($file); + $_ = $line; + s/<\S+?>//g; # would set-off our >file or >file + while (s!>>?\s*([^\$/`\s;]+)\s*!: !) { + $file = $1; + next if $file =~ /&\d+/; # skip >&4 and friends + $filecreated{$file}++; + } + # Look for mentions of known temporary files to avoid complaining + # that they were not used. + while (s!\s+(\S+)!!) { + $file = $1; + $filetmp{$file} .= ' used' + if defined $filetmp{$file} && $filetmp{$file} !~ /\bused/; + } +} + +# Called at the end of each unit +sub p_end { + local($last) = @_; # Last processed line + local($where) = "\"$file\""; + + # The ?H: section, if present, must have been closed + if ($h_section && $h_section != 2) { + warn "$where: unclosed ?H: section.\n"; + } + $h_section = 0; # For next unit, which may be empty + + # All opened here-documents must be closed. + if ($heredoc ne '') { + my $q = $heredoc_nosubst ? "'" : ""; + warn "$where: unclosed here-document $q$heredoc$q " . + "started line $heredoc_line.\n" + unless $linthere{$heredoc}; + } + + # Reinitialize for next unit. + $heredoc = ''; + $heredoc_nosubst = 0; + $past_first_line = 0; + $last_interpreted = 0; + + unless ($makeseen{$unit}) { + warn "$where: no ?MAKE: line describing dependencies.\n" + unless $lintempty{$unit}; + return; + } + + # Each unit should end with a blank line. Unfortunately, some units + # may also end with an '@end' request and have the blank line above it. + # Currently, we do not have enough information to correctly diagnose + # whether it is valid or not so just skip it. + # Same thing for U/Obsol_sh.U which ends with a shell comment. + + warn "$where: not ending with a blank line.\n" unless + $last =~ /^\s*$/ || $last =~ /^\@end/ || $last =~ /^#|\?/; + + # For EMACS users. It would be fatal to the Configure script... + warn "$where: last line not ending with a new-line character.\n" + unless $last =~ /\n$/; + + # Make sure every shell symbol described in ?MAKE had a description + foreach $sym (sort keys %defseen) { + unless ($ssym{$sym}) { + warn "$where: symbol '\$$sym' was not described.\n" + unless $lintsdesc{$sym}; + $lintsdesc_used{$sym}++ if $lintsdesc{$sym}; + } + } + # Ensure all the C symbols defined by ?H: lines have a description + foreach $sym (sort keys %hcsym) { + unless ($csym{$sym}) { + warn "$where: C symbol '$sym' was not described.\n" + unless $lintcdesc{$sym}; + $lintcdesc_used{$sym}++ if $lintcdesc{$sym}; + } + } + # Ensure all the C symbols described by ?C: lines are defined in ?H: + foreach $sym (sort keys %csym) { + warn "$where: C symbol '$sym' was not defined by any ?H: line.\n" + unless $hcsym{$sym}; + } + # Make sure each defined symbol was set, unless it starts with an + # upper-case letter in which case it is not a "true" shell symbol. + # I don't care about the special symbols defined in %Except as I know + # they are handled correctly. + foreach $sym (sort keys %defseen) { + unless ($symset{$sym} || substr($sym, 0, 1) =~ /^[A-Z]/) { + warn "$where: variable '\$$sym' should have been set.\n" + unless $lintset{$sym}; + $lintset_used{$sym}++ if $lintset{$sym}; + } + } + # Make sure every non-special unit declared as wanted is indeed needed + foreach $sym (sort keys %depseen) { + if ($shused{$unit} !~ /\$$sym\b/ && substr($sym, 0, 1) !~ /^[A-Z]/) { + warn "$where: unused dependency variable '\$$sym'.\n" unless + $lintchange{$sym} || $lintuse{$sym}; + $lintchange_used{$sym}++ if $lintchange{$sym}; + $lintuse_used{$sym}++ if $lintuse{$sym}; + } + } + # Idem for conditionally wanted symbols + foreach $sym (sort keys %condseen) { + if ($shused{$unit} !~ /\$$sym\b/ && substr($sym, 0, 1) !~ /^[A-Z]/) { + warn "$where: unused conditional variable '\$$sym'.\n" unless + $lintchange{$sym} || $lintuse{$sym}; + $lintchange_used{$sym}++ if $lintchange{$sym}; + $lintuse_used{$sym}++ if $lintuse{$sym}; + } + } + # Idem for temporary symbols + foreach $sym (sort keys %tempseen) { + if ($shused{$unit} !~ /\$$sym\b/ && !$symset{$sym}) { + warn "$where: unused temporary variable '\$$sym'.\n" unless + $lintuse{$sym}; + $lintuse_used{$sym}++ if $lintuse{$sym}; + } + } + # Idem for local files + foreach $file (sort keys %filetmp) { + warn "$where: mis-used temporary file '$file'.\n" if + $filetmp{$file} =~ /\bmisused/; + warn "$where: unused temporary file '$file'.\n" unless + $lintfused{$file} || + $filetmp{$file} =~ /\bused/ || $filetmp{$file} =~ /\bmisused/; + } + # Make sure each private file listed as created on ?F: is really created. + # When found, a private UU file is entered in the %filecreated array + # with value 'a'. Each time a file creation occurs in the unit, an + # increment is done on that value. Since 'a'++ -> 'b', a numeric value + # in %filecreated means a non-local file, which is skipped. An 'a' means + # the file was not created... + local($value); + foreach $file (sort keys %filecreated) { + $value = $filecreated{$file}; + next if $value > 0; # Skip non UU-files. + warn "$where: file '$file' was not created.\n" if $value eq 'a'; + } + # Check whether some of the LINT directives were useful + foreach my $sym (sort keys %lintcreated) { + warn "$where: spurious 'LINT create $sym' directive.\n"; + } + foreach my $sym (sort keys %lintuse) { + warn "$where: spurious 'LINT use $sym' directive.\n" + unless $lintuse_used{$sym}; + } + foreach my $sym (sort keys %lintchange) { + warn "$where: spurious 'LINT change $sym' directive.\n" + unless $lintchange_used{$sym}; + } + foreach my $sym (sort keys %lintseen) { + warn "$where: spurious 'LINT define $sym' directive.\n" + unless $lintseen_used{$sym}; + } + foreach my $sym (sort keys %lintsdesc) { + warn "$where: spurious 'LINT describe $sym' directive.\n" + unless $lintsdesc_used{$sym}; + } + foreach my $sym (sort keys %lintcdesc) { + warn "$where: spurious 'LINT known $sym' directive.\n" + unless $lintcdesc_used{$sym}; + } + foreach my $sym (sort keys %lintset) { + warn "$where: spurious 'LINT set $sym' directive.\n" + unless $lintset_used{$sym}; + } +} + +# An unknown control line sequence was found (held in $proc) +sub p_unknown { + warn "\"$file\", line $.: unknown control sequence '?$proc:'.\n"; +} + +# Run sanity checks, to make sure every conditional symbol has a suitable +# default value. Also ensure every symbol was defined once. +sub sanity_checks { + print "Sanity checks...\n"; + local($key, $value); + local($w); + local(%message); # Record messages on a per-unit basis + local(%said); # Avoid duplicate messages + # Warn about symbols ever used in conditional dependency with no default + while (($key, $value) = each(%condsym)) { + unless ($hasdefault{$key}) { + $w = (split(' ', $shmaster{"\$$key"}))[0]; + $message{$w} .= "#$key "; + } + } + # Warn about any undeclared variables. They are all listed in %shunknown, + # being the values while the unit where they appear is the key. If the + # symbol is defined by any of the special units included or made visible, + # then no warning is issued. + local($defined); # True if symbol is defined in one unit + local($where); # List of units where symbol is defined + local($myself); # The name of the current unit if itself special + local($visible); # Symbol made visible via a ?V: line + foreach $unit (sort keys %shunknown) { + foreach $sym (split(' ', $shunknown{$unit})) { + $defined = 0; + $where = $shmaster{"\$$sym"}; + $defined = 1 if $tempmaster{"\$$sym"} =~ /$unit\b/; + $myself = substr($unit, 0, 1) =~ /^[A-Z]/ ? $unit : ''; + # Symbol has to be either defined within one of the special units + # listed in the dependencies or exported via a ?V: line. + unless ($defined) { + $defined = &visible($sym, $unit); + $spneeded{$unit}++ if $defined; + } + $message{$unit} .= "\$$sym " unless $defined; + } + } + + # Warn about any undeclared files. Files used in one unit are all within + # the %fileused table, indexed by unit. If a file is used, it must either + # be in the unit that declared it (relying on %filemaster for that) or + # the unit listed in %filemaster must be part of our dependency. + %said = (); + foreach $unit (sort keys %fileused) { + foreach $file (split(' ', $fileused{$unit})) { + $defined = 0; + $where = $filemaster{$file}; # Where file is created + $defined = 1 if $unit eq $where; # We're in the unit defining it + # Private UU files may be only be created by special units + foreach $special (split(' ', $shspecial{$unit})) { + last if $defined; + $defined = 1 if $where eq $special; + } + # Exceptions to above rule possible via a ?LINT:create hint, + # so parse all known dependencies for the unit... + foreach $depend (split(' ', $shdepend{$unit})) { + last if $defined; + $defined = 1 if $where eq $depend; + } + $message{$unit} .= "\@$file " unless + $defined || $said{"$unit/$file"}++; # Unknown file + } + } + undef %fileused; + + # Warn about any misused files, kept in %filemisused + foreach $unit (sort keys %filemisused) { + foreach $file (split(' ', $filemisused{$unit})) { + next unless defined $filemaster{$file}; # Skip non UU-files + $message{$unit} .= "\@\@$file "; # Misused file + } + } + undef %filemisused; + + # Warn about temporary files which could be created and inadvertently + # override a private UU file (listed in %filemaster). + foreach $tmpfile (keys %filesetin) { + next unless defined $filemaster{$tmpfile}; + $where = $filemaster{$tmpfile}; + foreach $unit (split(' ', $filesetin{$tmpfile})) { + $message{$unit} .= "\@\@\@$where:$tmpfile "; + } + } + undef %filesetin; + + # Warn about any set variable which was not listed. + foreach $unit (sort keys %shset) { + symbol: foreach $sym (split(' ', $shset{$unit})) { + next if $shvisible{$sym}; + $defined = 0; + # Symbol has to be either defined within one of the special units + # listed in the dependencies or exported read-write via a ?V: line. + # If symbol is exported read-only, report the attempt to set it. + $where = $shmaster{"\$$sym"}; + study $where; + foreach $special (split(' ', $shspecial{$unit})) { + $defined = 1 if $where =~ /\b$special\b/; + last if $defined; + } + $visible = 0; + $defined = $visible = &visible($sym, $unit) unless $defined; + if ($visible && $shvisible{"\$$sym"} ne '') { + # We are allowed to set a read-only symbol in the unit which + # declared it... + next symbol if $shvisible{"\$$sym"} eq $unit; + $message{$unit} .= "\&$sym "; # Read-only symbol set + next symbol; + } + $message{$unit} .= "$sym " unless $defined; + } + } + # Warn about any obsolete variable which may be used + foreach $unit (sort keys %shused) { + foreach $sym (split(' ', $shused{$unit})) { + $message{$unit} .= "!$sym " if $Obsolete{$sym} ne ''; + } + } + + # Warn about stale dependencies, and prepare successor and predecessor + # tables for later topological sort. + + local($targets, $deps); + local(%Succ); # Successors + local(%Prec); # Predecessors + + # Split dependencies and build successors array. + foreach $make (@make) { + ($targets, $deps) = $make =~ m|(.*):\s*(.*)|; + $deps =~ s/\+(\w)/$1/g; # Remove conditional targets + foreach $target (split(' ', $targets)) { + $Succ{$target} .= $deps . ' '; + } + } + + # Special setup for the End target, which normally has a $W dependency for + # wanted symbols. In order to detect all the possible cycles, we forge a + # huge dependency by making ALL the regular symbols (i.e. those whose first + # letter is not uppercased) wanted. + + local($allwant) = ''; + { + local($sym, $val); + while (($sym, $val) = each %shmaster) { + $sym =~ s/^\$//; + $allwant .= "$sym " if $val ne ''; + } + } + + $Succ{'End'} =~ s/\$W/$allwant/; + + # Initialize precursors, and spot symbols impossible to 'make', i.e. those + # symbols listed in the successors and with no 'make' target. The data + # structures %Prec and %Succ will also be used by the cycle lookup code, + # in other words, the topological sort. + foreach $target (keys %Succ) { + $Prec{$target} += 0; # Ensure key is recorded without disturbing. + foreach $succ (split(' ', $Succ{$target})) { + $Prec{$succ}++; # Successor has one more precursor + unless (defined $Succ{$succ} || $said{$succ}++) { + foreach $unit (split(' ', $symdep{$succ})) { + $message{$unit} .= "?$succ "; # Stale ?MAKE: dependency + } + } + } + } + undef %symdep; + + # Check all ?M: dependencies to spot stale ones + %said = (); + while (($key, $value) = each(%msym)) { + next if $value eq ''; # Value is unit name where ?M: occurred + foreach $sym (split(' ', $mdep{$key})) { # Loop on C dependencies + next if $cmaster{$sym} || $said{$sym}; + $message{$value} .= "??$sym "; # Stale ?M: dependency + $said{$sym}++; + } + } + + undef %said; + undef %mdep; + undef %msym; + + # Now actually emit all the warnings + local($uv); # Unit defining visible symbol or private file + local($w); # Were we are signaling an error + foreach $unit (sort keys %message) { + undef %said; + $w = "\"$unit.U\""; + foreach (split(' ', $message{$unit})) { + if (s/^#//) { + warn "$w: symbol '\$$_' has no default value.\n"; + } elsif (s/^\?\?//) { + warn "$w: stale ?M: dependency '$_'.\n"; + } elsif (s/^\?//) { + warn "$w: stale ?MAKE: dependency '$_'.\n"; + } elsif (s/^\$//) { + if ($shmaster{"\$$_"} ne '') { + warn "$w: symbol '\$$_' missing from ?MAKE.\n"; + } elsif (($uv = $shvisible{$_}) ne '') { + warn "$w: missing $uv from ?MAKE for visible '\$$_'.\n"; + } elsif (($uv = $shvisible{"\$$_"}) ne '') { + warn "$w: missing $uv from ?MAKE for visible '\$$_'.\n"; + } else { + warn "\"$unit.U\": unknown symbol '\$$_'.\n"; + } + ++$said{$_}; + } elsif (s/^\&//) { + warn "\"$unit.U\": read-only symbol '\$$_' is set.\n"; + ++$said{$_}; + } elsif (s/^!//) { + warn "\"$unit.U\": obsolete symbol '$_' is used.\n"; + ++$said{$_}; + } elsif (s/^\@\@\@//) { + $uv = '?'; # To spot format errors + s/^(\w+):// && ($uv = $1); + warn "$w: local file '$_' may override the one set by $uv.U.\n"; + } elsif (s/^\@\@//) { + $uv = $filemaster{$_}; + warn "$w: you might not always get file '$_' from $uv.U.\n"; + } elsif (s/^\@//) { + if ($uv = $filemaster{$_}) { + warn "$w: missing $uv from ?MAKE for private file '$_'.\n"; + } else { + warn "$w: unknown private file '$_'.\n"; + } + ++$said{"\@$_"}; + } else { + warn "\"$unit.U\": undeclared symbol '\$$_' is set.\n" + unless $said{$_}; + } + } + } + + # Memory cleanup + undef %message; + undef %said; + undef %shused; + undef %shset; + undef %shspecial; + undef %shvisible; + undef %filemaster; + + # Spot multiply defined C symbols + foreach $sym (keys %cmaster) { + @sym = split(' ', $cmaster{$sym}); + if (@sym > 1) { + warn "C symbol '$sym' is defined in the following units:\n"; + foreach (@sym) { + print STDERR "\t$_.U\n"; + } + } + } + undef %cmaster; # Memory cleanup + + # Warn about multiply defined symbols. There are three kind of symbols: + # target symbols, obsolete symbols and temporary symbols. + # For each of these sets, we make sure the intersection with the other sets + # is empty. Besides, we make sure target symbols are only defined once. + + local(@sym); + foreach $sym (keys %shmaster) { + @sym = split(' ', $shmaster{$sym}); + if (@sym > 1) { + warn "Shell symbol '$sym' is defined in the following units:\n"; + foreach (@sym) { + print STDERR "\t$_.U\n"; + } + } + $message{$sym} .= 'so ' if $Obsolete{$sym}; + $message{$sym} .= 'st ' if $tempmaster{$sym}; + } + foreach $sym (keys %tempmaster) { + $message{$sym} .= 'ot ' if $Obsolete{$sym}; + } + local($_); + while (($sym, $_) = each %message) { + if (/so/) { + if (/ot/) { + warn "Shell symbol '$sym' is altogether:\n"; + @sym = split(' ', $shmaster{$sym}); + @sym = grep(s/$/.U/, @sym); + print STDERR "...defined in: ", join(', ', @sym), "\n"; + print STDERR "...obsoleted by $Obsolete{$sym}.\n"; + @sym = split(' ', $tempmaster{$sym}); + @sym = grep(s/$/.U/, @sym); + print STDERR "...used as temporary in:", join(', ', @sym), "\n"; + } else { + warn "Shell symbol '$sym' is both defined and obsoleted:\n"; + @sym = split(' ', $shmaster{$sym}); + @sym = grep(s/$/.U/, @sym); + print STDERR "...defined in: ", join(', ', @sym), "\n"; + print STDERR "...obsoleted by $Obsolete{$sym}.\n"; + } + } elsif (/st/) { # Cannot be ot as it would imply so + warn "Shell symbol '$sym' is both defined and used as temporary:\n"; + @sym = split(' ', $shmaster{$sym}); + @sym = grep(s/$/.U/, @sym); + print STDERR "...defined in: ", join(', ', @sym), "\n"; + @sym = split(' ', $tempmaster{$sym}); + @sym = grep(s/$/.U/, @sym); + print STDERR "...used as temporary in:", join(', ', @sym), "\n"; + } elsif (/ot/) { + warn "Shell symbol '$sym' obsoleted also used as temporary:\n"; + print STDERR "...obsoleted by $Obsolete{$sym}.\n"; + @sym = split(' ', $tempmaster{$sym}); + @sym = grep(s/$/.U/, @sym); + print STDERR "...used as temporary in:", join(', ', @sym), "\n"; + } + } + + # Spot multiply defined files, either private or public ones + foreach $file (keys %prodfile) { + @sym = split(' ', $prodfile{$file}); + if (@sym > 1) { + warn "File '$file' is defined in the following units:\n"; + foreach (@sym) { + print STDERR "\t$_\n"; + } + } + } + undef %prodfile; + + + # Memory cleanup (we still need %shmaster for tsort) + undef %message; + undef %tempmaster; + undef %Obsolete; + + # Make sure there is no dependency cycle + print "Looking for dependency cycles...\n"; + &tsort(*Succ, *Prec); # Destroys info from %Prec +} + +# Make sure last declaration ended correctly with a ?S:. or ?C:. line. +# The variable '$where' was correctly positionned by the calling routine. +sub check_last_declaration { + warn "$where: definition of '\$$s_symbol' not closed by '?S:.'.\n" + if $s_symbol ne ''; + warn "$where: definition of '$c_symbol' not closed by '?C:.'.\n" + if $c_symbol ne ''; + warn "$where: magic definition of '$m_symbol' not closed by '?M:.'.\n" + if $m_symbol ne ''; + $s_symbol = $c_symbol = $m_symbol = ''; +} + +# Make sure the variable is mentionned on the ?MAKE line, if possible in the +# definition section. +# The variable '$where' was correctly positionned by the calling routine. +sub check_definition { + local($var) = @_; + warn "$where: variable '\$$var' not even listed on ?MAKE: line.\n" + unless $defseen{$var} || $condseen{$var} || $depseen{$var}; + warn "$where: variable '\$$var' is defined externally.\n" + if !$lintextern{$var} && !$defseen{$var} && &wanted($var); +} + +# Is symbol declared somewhere? +sub declared { + &defined($_[0]) || &wanted($_[0]); +} + +# Is symbol defined by unit? +sub defined { + $tempseen{$_[0]} || $defseen{$_[0]} || $lintseen{$_[0]}; +} + +# Is symbol wanted by unit? +sub wanted { + $depseen{$_[0]} || $condseen{$_[0]}; +} + +# Is symbol visible from the unit? +# Locate visible symbols throughout the special units. Each unit having +# some special dependencies (special units wanted) have an entry in the +# %shspecial array, listing all those special dependencies. And each +# symbol made visible by ONE special unit has an entry in the %shvisible +# array. +sub visible { + local($symbol, $unit) = @_; + local(%explored); # Special units we've already explored + &explore($symbol, $unit); # Perform recursive search +} + +# Recursively explore the dependencies to locate a visible symbol +sub explore { + local($symbol, $unit) = @_; + # If unit was already explored, we know it has not been found by following + # that path. + return 0 if defined $explored{$unit}; + $explored{$unit} = 0; # Assume nothing found in this unit + local($specials) = $shspecial{$unit}; + # Don't waste any time if unit does not have any special units listed + # in its dependencies. + return 0 unless $specials; + foreach $special (split(' ', $specials)) { + return 1 if ( + $shvisible{"\$$symbol"} eq $unit || + $shvisible{$symbol} eq $unit || + &explore($symbol, $special) + ); + } + 0; +} + diff --git a/mcon/pl/locate.pl b/mcon/pl/locate.pl new file mode 100644 index 0000000..ea7d03f --- /dev/null +++ b/mcon/pl/locate.pl @@ -0,0 +1,153 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: locate.pl,v $ +;# Revision 3.0.1.1 1994/10/29 16:36:52 ram +;# patch36: misspelled a 'closedir' as a 'close' statement +;# +;# Revision 3.0 1993/08/18 12:10:25 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# Locate units and put them in the @ARGV array, for later perusal. We first +;# look in the private U directory, then in the public U library. In each U +;# directory, units may be gathered in clusters (directories). These clusters +;# should not have a name ending with .U, as those will never be stat()'ed. +;# +;# NB: Currently, the clusters are only a practical way of grouping a set of +;# closely related units. There must not be any name conflicts. +;# +;# The following variables are used: +;# $WD is assumed to be the working directory (where the process was spawned) +;# $MC is the location of metaconfig's public library +;# @ARGV is the list of all the units full path +;# %Unit maps an unit name (without final .U) to a path +;# @myUlist lists the user's units, which will be appended at the end of @ARGV +;# %myUseen lists the user's units which overwrite public ones +;# +package locate; + +# Locate the units and push their path in @ARGV (sorted alphabetically) +sub main'locate_units { + print "Locating units...\n" unless $main'opt_s; + local(*WD) = *main'WD; # Current working directory + local(*MC) = *main'MC; # Public metaconfig library + undef %myUlist; # Records private units paths + undef %myUseen; # Records private/public conflicts + &private_units; # Locate private units in @myUlist + &public_units; # Locate public units in @ARGV + @ARGV = sort @ARGV; # Sort it alphabetically + push(@ARGV, sort @myUlist); # Append user's units sorted + &dump_list if $main'opt_v; # Dump the list of units +} + +# Dump the list of units on stdout +sub dump_list { + print "\t"; + $, = "\n\t"; + print @ARGV; + $, = ''; + print "\n"; +} + +# Scan private units +sub private_units { + return unless -d 'U'; # Nothing to be done if no 'U' entry + local(*ARGV) = *myUlist; # Really fill in @myUlist + local($MC) = $WD; # We are really in the working directory + &units_path("U"); # Locate units in the U directory + local($unit_name); # Unit's name (without .U) + local(@kept); # Array of kept units + # Loop over the units and remove duplicates (the first one seen is the one + # we keep). Also set the %myUseen H table to record private units seen. + foreach (@ARGV) { + ($unit_name) = m|^.*/(.*)\.U$|; # Get unit's name from path + next if $myUseen{$unit_name}; # Already recorded + $myUseen{$unit_name} = 1; # Record pirvate unit + push(@kept, $_); # Keep this unit + } + @ARGV = @kept; +} + +# Scan public units +sub public_units { + chdir($MC) || die "Can't find directory $MC.\n"; + &units_path("U"); # Locate units in public U directory + chdir($WD) || die "Can't go back to directory $WD.\n"; + local($path); # Relative path from $WD + local($unit_name); # Unit's name (without .U) + local(*Unit) = *main'Unit; # Unit is a global from main package + local(@kept); # Units kept + local(%warned); # Units which have already issued a message + # Loop over all the units and keep only the ones that were not found in + # the user's U directory. As it is possible two or more units with the same + # name be found in + foreach (@ARGV) { + ($unit_name) = m|^.*/(.*)\.U$|; # Get unit's name from path + next if $warned{$unit_name}; # We have already seen this unit + $warned{$unit_name} = 1; # Remember we have warned the user + if ($myUseen{$unit_name}) { # User already has a private unit + $path = $Unit{$unit_name}; # Extract user's unit path + next if $path eq $_; # Same path, we must be in mcon/ + $path =~ s|^$WD/||o; # Weed out leading working dir path + print " Your private $path overrides the public one.\n" + unless $main'opt_s; + } else { + push(@kept, $_); # We may keep this one + } + } + @ARGV = @kept; +} + +# Recursively locate units in the directory. Each file ending with .U has to be +# a unit. Others are stat()'ed, and if they are a directory, they are also +# scanned through. The $MC and @ARGV variable are dynamically set by the caller. +sub units_path { + local($dir) = @_; # Directory where units are to be found + local(@contents); # Contents of the directory + local($unit_name); # Unit's name, without final .U + local($path); # Full path of a unit + local(*Unit) = *main'Unit; # Unit is a global from main package + unless (opendir(DIR, $dir)) { + warn("Cannot open directory $dir.\n"); + return; + } + print "Locating in $MC/$dir...\n" if $main'opt_v; + @contents = readdir DIR; # Slurp the whole thing + closedir DIR; # And close dir, ready for recursion + foreach (@contents) { + next if $_ eq '.' || $_ eq '..'; + if (/\.U$/) { # A unit, definitely + ($unit_name) = /^(.*)\.U$/; + $path = "$MC/$dir/$_"; # Full path of unit + push(@ARGV, $path); # Record its path + if (defined $Unit{$unit_name}) { # Already seen this unit + if ($main'opt_v) { + ($path) = $Unit{$unit_name} =~ m|^(.*)/.*|; + print " We've already seen $unit_name.U in $path.\n"; + } + } else { + $Unit{$unit_name} = $path; # Map name to path + } + next; + } + # We have found a file which does not look like a unit. If it is a + # directory, then scan it. Otherwise skip the file. + unless (-d "$dir/$_") { + print " Skipping file $_ in $dir.\n" if $main'opt_v; + next; + } + &units_path("$dir/$_"); + print "Back to $MC/$dir...\n" if $main'opt_v; + } +} + +package main; + diff --git a/mcon/pl/makefile.pl b/mcon/pl/makefile.pl new file mode 100644 index 0000000..290c995 --- /dev/null +++ b/mcon/pl/makefile.pl @@ -0,0 +1,176 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: makefile.pl,v $ +;# Revision 3.0.1.1 1995/09/25 09:19:42 ram +;# patch59: symbols are now sorted according to the ?Y: layout directive +;# +;# Revision 3.0 1993/08/18 12:10:26 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# Given a list of wanted symbols in the Wanted file, produce a Makefile which +;# will compute the transitive closure of dependencies for us and give the +;# correct layout order in the Configure script. Because some conditional +;# symbols could indeed be truly wanted symbols, we build the makefile in two +;# passes. The first one will give us the complete list of units to be loaded, +;# while the second will determine the correct order. +;# +;# The external $saved_dependencies records the original dependencies we got +;# from the units' ?MAKE: lines while $dependencies is tampered with. +;# +;# Note that when the -w option is supplied, the sources are not parsed. +;# However, the config.h.SH file would be empty, because its building +;# relies on values in cmaster and shmaster arrays. It is okay for values +;# in shmaster, because they are true wanted symbols. The cmaster keys +;# have also been written, but with a leading '>' (because they are +;# not true targets for Makefile). We thus extract all these keys and +;# set the cmaster array accordingly. +;# +;# Obsolete symbols, if any found, are also part of the Wanted file, written on +;# a line starting with a '!', eventually followed by a '>' if the obsolete +;# symbol is a C one. +;# +;# These three data structures record wanted things like commands or symbols. +;# %symwanted{'sym'} is true when the symbol is wanted (transitive closure) +;# %condwanted{'sym'} when the default value of a symbol is requested +;# $wanted records the set of wanted shell symbols (as opposed to C ones) +;# +# Build the private makefile we use to compute the transitive closure of the +# previously determined dependencies. +sub build_makefile { + print "Computing optimal dependency graph...\n" unless $opt_s; + chdir('.MT') || die "Can't chdir to .MT\n"; + local($wanted); # Wanted shell symbols + &build_private; # Build a first makefile from dependencies + &compute_loadable; # Compute loadable units + &update_makefile; # Update makefile using feedback from first pass + chdir($WD) || die "Can't chdir back to $WD\n"; + # Free memory by removing useless data structures + undef $dependencies; + undef $saved_dependencies; +} + +# First pass: build a private makefile from the extracted dependency, changing +# conditional units to truly wanted ones if the symbol is used, removing the +# dependency otherwise. The original dependencies are saved. +sub build_private { + print " Building private make file...\n" unless $opt_s; + open(WANTED,"../Wanted") || die "Can't reopen Wanted.\n"; + $wanted = ' ' x 2000; # Pre-extend string + $wanted = ''; + while () { + chop; + next if /^!/; # Skip obsolete symbols + if (s/^>//) { + $cmaster{$_}++; + } else { + $wanted .= "$_ "; + } + } + close WANTED; + + # The wanted symbols are sorted so that d_* (checking for C library symbol) + # come first and i_* (checking for includes) comes at the end. Grouping the + # d_* symbols together has good chances of improving the locality of the + # other questions and i_* symbols must come last since some depend on h_* + # values which prevent incompatible headers inclusions. + $wanted = join(' ', sort symbols split(' ', $wanted)); + + # Now generate the first makefile, which will be used to determine which + # symbols we really need, so that conditional dependencies may be solved. + open(MAKEFILE,">Makefile") || die "Can't create .MT/Makefile.\n"; + print MAKEFILE "SHELL = /bin/sh\n"; + print MAKEFILE "W = $wanted\n"; + $saved_dependencies = $dependencies; + $* = 1; + foreach $sym (@Cond) { + if ($symwanted{$sym}) { + $dependencies =~ s/\+($sym\s)/$1/g; + } else { + $dependencies =~ s/\+$sym(\s)/$1/g; + } + } + $* = 0; + print MAKEFILE $dependencies; + close MAKEFILE; +} + +# Ordering for symbols. Give higher priority to d_* ones and lower to i_* ones. +# If any layout priority is defined in %Layout, it is used to order the +# symbols. +sub symbols { + local($r) = $Layout{$a} <=> $Layout{$b}; + return $r if $r; + # If we come here, both symbols have the same layout priority. + if ($a =~ /^d_/) { + return -1 unless $b =~ /^d_/; + } elsif ($b =~ /^d_/) { + return 1; + } elsif ($a =~ /^i_/) { + return 1 unless $b =~ /^i_/; + } elsif ($b =~ /^i_/) { + return -1; + } + $a cmp $b; +} + +# Run the makefile produced in the first pass to find the whole set of units we +# have to load, filling in the %symwanted and %condwanted structures. +sub compute_loadable { + print " Determining loadable units...\n" unless $opt_s; + open(MAKE, "make -n |") || die "Can't run make"; + while () { + s|^\s+||; # Some make print tabs before command + if (/^pick/) { + print "\t$_" if $opt_v; + ($pick,$cmd,$symbol,$unit) = split(' '); + $symwanted{$symbol}++; + $symwanted{$unit}++; + } elsif (/^cond/) { + print "\t$_" if $opt_v; + ($pick,@symbol) = split(' '); + for (@symbol) { + $condwanted{$_}++; # Default value is requested + } + } + } + close MAKE; +} + +# Now that we know all the desirable symbols, we have to rebuild +# another makefile, in order to have the units in a more optimal +# way. +# Actually, if we have both ?MAKE:a:+b and ?MAKE:d:b and 'd' is +# wanted; then 'b' will be loaded. However, 'b' is a conditional +# dependency for 'a', and it would be better if 'b' were loaded +# before 'a' is, though this is not necessary. +# It is hard to know that 'b' will be loaded *before* the first make. + +# Back to the original dependencies, make loadable units truly wanted ones and +# remove optional ones. +sub update_makefile { + print " Updating make file...\n" unless $opt_s; + open(MAKEFILE,">Makefile") || die "Can't create .MT/Makefile.\n"; + print MAKEFILE "SHELL = /bin/sh\n"; + print MAKEFILE "W = $wanted\n"; + $* = 1; + foreach $sym (@Cond) { + if ($symwanted{$sym}) { + $saved_dependencies =~ s/\+($sym\s)/$1/g; + } else { + $saved_dependencies =~ s/\+$sym(\s)/$1/g; + } + } + $* = 0; + print MAKEFILE $saved_dependencies; + close MAKEFILE; +} + diff --git a/mcon/pl/obsolete.pl b/mcon/pl/obsolete.pl new file mode 100644 index 0000000..ba9a601 --- /dev/null +++ b/mcon/pl/obsolete.pl @@ -0,0 +1,103 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: obsolete.pl,v $ +;# Revision 3.0.1.1 1995/01/30 14:49:22 ram +;# patch49: random clean-up in &record_obsolete +;# +;# Revision 3.0 1993/08/18 12:10:27 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# Deal with obsolete symbols. They are recorded in the %Obsolete array. +;# Optionally, the obsolete symbols may be remaped onto the new ones (option +;# -o), which enables smooth evolution from 2.0. +;# +# Record obsolete symbols association (new versus old), that is to say for a +# given old symbol, $Obsolete{'old'} = new symbol to be used. A '$' is prepended +# for all shell variables +sub record_obsolete { + local($_) = @_; + local(@obsoleted); # List of obsolete symbols + local($symbol); # New symbol which must be used + local($dollar) = s/^\$// ? '$':''; # The '$' or a null string + # Syntax for obsolete symbols specification is + # list of symbols (obsolete ones): + if (/^(\w+)\s*\((.*)\)\s*:$/) { + $symbol = "$dollar$1"; + @obsoleted = split(' ', $2); # List of obsolete symbols + } else { + if (/^(\w+)\s*\((.*):$/) { + warn "\"$file\", line $.: final ')' before ':' missing.\n"; + $symbol = "$dollar$1"; + @obsoleted = split(' ', $2); + } else { + warn "\"$file\", line $.: syntax error.\n"; + return; + } + } + foreach $val (@obsoleted) { + $_ = $dollar . $val; + if (defined $Obsolete{$_}) { + warn "\"$file\", line $.: '$_' already obsoleted by '$Obsolete{$_}'.\n"; + } else { + $Obsolete{$_} = $symbol; # Record (old, new) tuple + } + } +} + +# Dump obsolete symbols used in file 'Obsolete'. Also write Obsol_h.U and +# Obsol_sh.U to record old versus new mappings if the -o option was used. +sub dump_obsolete { + unless (-f 'Obsolete') { + open(OBSOLETE, ">Obsolete") || die "Can't create Obsolete.\n"; + } + open(OBSOL_H, ">.MT/Obsol_h.U") || die "Can't create .MT/Obsol_h.U.\n"; + open(OBSOL_SH, ">.MT/Obsol_sh.U") || die "Can't create .MT/Obsol_sh.U.\n"; + local($file); # File where obsolete symbol was found + local($old); # Name of this old symbol + local($new); # Value of the new symbol to be used + # Leave a blank line at the top so that anny added ^L will stand on a line + # by itself (the formatting process adds a ^L when a new page is needed). + format OBSOLETE_TOP = + + File | Old symbol | New symbol +-----------------------------------+----------------------+--------------------- +. + format OBSOLETE = +@<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< | @<<<<<<<<<<<<<<<<<<< | @<<<<<<<<<<<<<<<<<<< +$file, $old, $new +. + local(%seen); + foreach $key (sort keys %ofound) { + ($file, $old, $new) = ($key =~ /^(\S+)\s+(\S+)\s+(\S+)/); + write(OBSOLETE) unless $file eq 'XXX'; + next unless $opt_o; # Obsolete mapping done only with -o + next if $seen{$old}++; # Already remapped, thank you + if ($new =~ s/^\$//) { # We found an obsolete shell symbol + $old =~ s/^\$//; + print OBSOL_SH "$old=\"\$$new\"\n"; + } else { # We found an obsolete C symbol + print OBSOL_H "#ifdef $new\n"; + print OBSOL_H "#define $old $new\n"; + print OBSOL_H "#endif\n\n"; + } + } + close OBSOLETE; + close OBSOL_H; + close OBSOL_SH; + if (-s 'Obsolete') { + print "*** Obsolete symbols found -- see file 'Obsolete' for a list.\n"; + } else { + unlink 'Obsolete'; + } + undef %ofound; # Not needed any more +} + diff --git a/mcon/pl/order.pl b/mcon/pl/order.pl new file mode 100644 index 0000000..e6ef35a --- /dev/null +++ b/mcon/pl/order.pl @@ -0,0 +1,42 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: order.pl,v $ +;# Revision 3.0 1993/08/18 12:10:28 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# The @cmdwanted array records the output of the makefile (pick commands only). +;# The shell commands are executed right away. +;# @cmdwanted records the output of the make process (solving dependencies) +# Solve dependencies by saving the 'pick' command in @cmdwanted +sub solve_dependencies { + local(%unitseen); # Record already picked units (avoid duplicates) + print "Determining the correct order for the units...\n" unless $opt_s; + chdir('.MT') || die "Can't chdir to .MT: $!.\n"; + open(MAKE, "make -n |") || die "Can't run make"; + while () { + s|^\s+||; # Some make print tabs before command + print "\t$_" if $opt_v; + if (/^pick/) { + ($pick,$cmd,$symbol,$unit) = split(' '); + push(@cmdwanted,"$cmd $symbol $unit") + unless $unitseen{"$cmd:$unit"}++; + } elsif (/^cond/) { + # Ignore conditional symbol request + } else { + chop; + system; + } + } + chdir($WD) || die "Can't chdir to $WD: $!.\n"; + close MAKE; +} + diff --git a/mcon/pl/tsort.pl b/mcon/pl/tsort.pl new file mode 100644 index 0000000..4d56fae --- /dev/null +++ b/mcon/pl/tsort.pl @@ -0,0 +1,166 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: tsort.pl,v $ +;# Revision 3.0 1993/08/18 12:10:28 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# The topological sort is performed using the following algorithm: +;# +;# We have a list of successors for each item; makefile dependencies of +;# the form 'a b: c d' means successors(a) = successors(b) = { c, d }. +;# From that input, we derive a number of precursors for each item. +;# In our simple example above, c and d both have two precursors and +;# a and b have none. Items with no precursors are called outsiders +;# and are left in a pool. The sort is then initiated and will continue +;# until all the items have been sorted or a cycle is found... +;# +;# Outsiders are ready to be sorted; since the topological sort is a partial +;# order, an external criterion is needed to choose one item among the ones +;# in the pool. That item is assigned a number, and the number of precursors +;# for the remaining items is updated (by following the successors of the +;# sorted item and decrementing the value for each successor). Among those, +;# if any item reaches a precursor count of zero, it becomes an outsider. +;# +;# The algorithm ends when the outsider pool is empty. If it becomes empty and +;# some items remain unsorted, then there is one or more cycles among them. +;# One way to outline that cycle first extract all those items whose precursor +;# count is minimal then visit their dependency graph to find the cycle, +;# extract only those items belonging to the cycle into the outsiders set and +;# resume the main processing stream. +;# +# +# Topological sort of Makefile dependencies with cycle enhancing. +# + +package tsort; + +# Perform the topological sort of the items and outline cycles. +sub main'tsort { + local(*Succ, *Prec) = @_; # Tables of succesors and predecessors + local(@Out); # The outsider set + local(@keys); # Current active precursors + local($item); # Item to sort + + for (@keys = keys %Prec; @keys || @Out; @keys = keys %Prec) { + &resync; # Resynchronize outsiders + if (@Out == 0) { # Cycle detected + &extract_cycle(*Prec, *Succ); + next; + } + $item = shift(@Out); # Sort current item (don't care which one) + &sort($item); # Update internal structures + } +} + +# Resynchronize the outsiders stack (those items that have no more precursors). +# If the outsiders stack becomes empty, then there is a cycle. +sub resync { + foreach $target (keys %Prec) { + if ($Prec{$target} == 0) { + delete $Prec{$target}; # We're done with this item + push(@Out, $target); # Ready to be sorted + } + } +} + +# Sort item +sub sort { + local($item) = @_; + print "(ok) $item\n" if $main'opt_d && !$Cycle; + print "(fx) $item\n" if $main'opt_d && $Cycle; + foreach $succ (split(' ', $Succ{$item})) { + # The test for definedness is necessary, since when a cycle is found, + # one item is forced out of %Prec. If we had the guarantee of no + # cycle, the the test would not be necessary and no decrementation + # could go past 0. + $Prec{$succ}-- if defined $Prec{$succ}; + } +} + +# Extract cycle... We look through the %Prec array and find all those items +# with the same lowest value. Those are a cycle, so we dump them, and make +# them new outsiders by resetting their count to 0. +sub extract_cycle { + local(*Prec, *Succ) = @_; + local($item) = (&sort_by_value(*Prec))[0]; + local($min) = $Prec{$item}; # Minimum value + local($key, $value); + local(%candidate); # Superset of the cycle we found + warn " Cycle found for:\n"; + $Cycle++; + while (($key, $value) = each %Prec) { + $candidate{$key}++ if $value == $min; + } + local(%state); # State of visited nodes (1 = cycle, -1 = dead) + local($CYCLE) = 1; # Possible member of a cycle + local($DEAD) = -1; # Dead end, no cycling possible + foreach $key (keys %candidate) { + last if $CYCLE == &visit($key, $Succ{$key}); + } + while (($key, $value) = each %candidate) { + next unless $state{$key} == $CYCLE; + $Prec{$key} = 0; # Members of cycle are new outsiders + warn "\t(#$Cycle) $key\n"; + } + local(%involved); # Items involved in the cycle... + while (($key, $value) = each %state) { + $involved{$key}++ if $state{$key} == $CYCLE; + } + &outline_cycle(*Succ, *involved); +} + +sub outline_cycle { + local(*Succ, *member) = @_; + local($key, $value); + local($depends); + local($unit); + warn " Cycle involves:\n"; + while (($key, $value) = each %Succ) { + next unless $member{$key}; + $depends = ''; + foreach $item (split(' ', $value)) { + $depends .= "$item " if $member{$item}; + } + $unit = $main'shmaster{"\$$key"}; + $unit =~ s/\s+$//; + $unit = '?' if $unit eq ''; + warn "\t($unit) $key: $depends\n"; + } +} + +# Visit a tree node, following all its successors, until we find a cycle. +# Return $CYCLE if the exploration of the node leaded to a cycle, $DEAD +# otherwise. +sub visit { + local($node, $children) = @_; # A node and its children + # If we have already visited the node, return the status value attached + # to it. + return $state{$node} if $state{$node}; + $state{$node} = $CYCLE; # Assume member of cycle + local($all_dead) = 1; # Set to 0 if at least one cycle found + foreach $child (split(' ', $children)) { + $all_dead = 0 if $CYCLE == &visit($child, $Succ{$child}); + } + $state{$node} = $DEAD if $all_dead; + $state{$node}; +} + +# Sort associative array by value +sub sort_by_value { + local(*x) = @_; + sub _by_value { $x{$a} <=> $x{$b}; } + sort _by_value keys %x; +} + +package main; + +1; diff --git a/mcon/pl/wanted.pl b/mcon/pl/wanted.pl new file mode 100644 index 0000000..20d218c --- /dev/null +++ b/mcon/pl/wanted.pl @@ -0,0 +1,263 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: wanted.pl,v $ +;# Revision 3.0.1.2 1995/01/11 15:42:37 ram +;# patch45: added % in front of hash table names for perl5's each() (ADO) +;# patch45: tell users about possible extra file-extension lookups +;# +;# Revision 3.0.1.1 1993/10/16 13:56:05 ram +;# patch12: modified to handle ?M: lines +;# patch12: added warning when magic symbols used without proper config +;# +;# Revision 3.0 1993/08/18 12:10:29 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# These two arrays record the file names of the files which may (or may not) +;# contain shell or C symbols known by metaconfig. +;# @SHlist records the .SH files +;# @clist records the C-like files (i.e. .[chyl]) +;# +;# These files are scanned in turn to see how many symbols known by metaconfig +;# they have. Those symbols are gathered in a Wanted file. As C symbols are +;# not true targets for the forthcoming Makefile, a ">" sign is prepended. +;# Finally, the obsolete symbols are preceded by a "!". +;# +;# When obsolete symbols are found, they are dumped in file 'Obsolete'. Two +;# files are created anyway in the .MT directory. Obsol_h.U and Obsol_sh.U which +;# respectively list the obsoleted symbols (C and shell ones). +;# Obsol_h.U records obsolete C symbols +;# Obsol_sh.U records obsolete shell symbols +;# +;# The manifake() routine has to be provided externally. +;# +# Build a wanted file from the files held in @SHlist and @clist arrays +sub build_wanted { + # If wanted file is already there, parse it to map obsolete if -o option + # was used. Otherwise, build a new one. + if (-f 'Wanted') { + &map_obsolete if $opt_o; # Build Obsol*.U files + &dump_obsolete; # Dump obsolete symbols if any + return; + } + &parse_files; +} + +sub parse_files { + print "Building a Wanted file...\n" unless $opt_s; + open(WANTED,"| sort | uniq >Wanted") || die "Can't create Wanted.\n"; + unless (-f $NEWMANI) { + &manifake; + die "No $NEWMANI--can't build a Wanted file.\n" unless -f $NEWMANI; + } + + local($search); # Where to-be-evaled script is held + local($_) = ' ' x 50000 if $opt_m; # Pre-extend pattern search space + local(%visited); # Records visited files + local(%lastfound); # Where last occurence of key was + + # Now we are a little clever, and build a loop to eval so that we don't + # have to recompile our patterns on every file. We also use "study" since + # we are searching the same string for many different things. Hauls! + + if (@clist) { + local($others) = $cext ? " $cext" : ''; + print " Scanning .[chyl]$others files for symbols...\n" + unless $opt_s; + $search = ' ' x (40 * (@cmaster + @ocmaster)); # Pre-extend + $search = "while (<>) {study;\n"; # Init loop over ARGV + foreach $key (keys(%cmaster)) { + $search .= "&cmaster('$key') if /\\b$key\\b/;\n"; + } + foreach $key (grep(!/^\$/, keys %Obsolete)) { + $search .= "&ofound('$key') if /\\b$key\\b/;\n"; + } + $search .= "}\n"; # terminate loop + print $search if $opt_d; + @ARGV = @clist; + # Swallow each file as a whole, if memory is available + undef $/ if $opt_m; + eval $search; + eval ''; + $/ = "\n"; + while (($key,$value) = each(%cmaster)) { + print WANTED $cwanted{$key}, "\n", ">$key", "\n" if $value; + } + } + + # If they don't use magic but use magically guarded symbols without + # their corresponding C symbol dependency, warn them, since they might + # not know about that portability issue. + + if (@clist && !$opt_M) { + local($nused); # list of non-used symbols + local($warning) = 0; # true when one warning issued + foreach $cmag (keys %mwanted) { # loop over all used magic symbols + next unless $cmaster{$cmag}; + $nused = ''; + foreach $cdep (split(' ', $mwanted{$cmag})) { + $nused .= " $cdep" unless $cmaster{$cdep}; + } + $nused =~ s/^ //; + $nused = "one of " . $nused if $nused =~ s/ /, /g; + if ($nused ne '') { + print " Warning: $cmag is used without $nused.\n"; + $warning++; + } + } + if ($warning) { + local($those) = $warning == 1 ? 'that' : 'those'; + local($s) = $warning == 1 ? '' : 's'; + print "Note: $those previous warning$s may be suppressed by -M.\n"; + } + } + + # Cannot remove $cmaster as it is used later on when building Configure + undef @clist; + undef %cwanted; + undef %mwanted; + %visited = (); + %lastfound = (); + + if (@SHlist) { + local($others) = $shext ? " $shext" : ''; + print " Scanning .SH$others files for symbols...\n" unless $opt_s; + $search = ' ' x (40 * (@shmaster + @oshmaster)); # Pre-extend + $search = "while (<>) {study;\n"; + # All the keys already have a leading '$' + foreach $key (keys(%shmaster)) { + $search .= "&shmaster('$key') if /\\$key\\b/;\n"; + } + foreach $key (grep (/^\$/, keys %Obsolete)) { + $search .= "&ofound('$key') if /\\$key\\b/;\n"; + } + $search .= "}\n"; + print $search if $opt_d; + @ARGV = @SHlist; + # Swallow each file as a whole, if memory is available + undef $/ if $opt_m; + eval $search; + eval ''; + $/ = "\n"; + while (($key,$value) = each(%shmaster)) { + if ($value) { + $key =~ s/^\$//; + print WANTED $key, "\n"; + } + } + } + + # Obsolete symbols, if any, are written in the Wanted file preceded by a + # '!' character. In case -w is used, we'll thus be able to correctly build + # the Obsol_h.U and Obsol_sh.U files. + + &add_obsolete; # Add obsolete symbols in Wanted file + + close WANTED; + + # If obsolete symbols where found, write an Obsolete file which lists where + # each of them appear and the new symbol to be used. Also write Obsol_h.U + # and Obsol_sh.U in .MT for later perusal. + + &dump_obsolete; # Dump obsolete symbols if any + + die "No desirable symbols found--aborting.\n" unless -s 'Wanted'; + + # Clean-up memory by freeing useless data structures + undef @SHlist; + undef %shmaster; +} + +# This routine records matches of C master keys +sub cmaster { + local($key) = @_; + $cmaster{$key}++; # This symbol is wanted + return unless $opt_t || $opt_M; # Return if neither -t nor -M + if ($opt_t && + $lastfound{$key} ne $ARGV # Never mentionned for this file ? + ) { + $visited{$ARGV}++ || print $ARGV,":\n"; + print "\t$key\n"; + $lastfound{$key} = $ARGV; + } + if ($opt_M && + defined($mwanted{$key}) # Found a ?M: symbol + ) { + foreach $csym (split(' ', $mwanted{$key})) { + $cmaster{$csym}++; # Activate C symbol dependencies + } + } +} + +# This routine records matches of obsolete keys (C or shell) +sub ofound { + local($key) = @_; + local($_) = $Obsolete{$key}; # Value of new symbol + $ofound{"$ARGV $key $_"}++; # Record obsolete match + $cmaster{$_}++ unless /^\$/; # A C hit + $shmaster{$_}++ if /^\$/; # Or a shell one + return unless $opt_t; # Continue if trace option on + if ($lastfound{$key} ne $ARGV) { # Never mentionned for this file ? + $visited{$ARGV}++ || print $ARGV,":\n"; + print "\t$key (obsolete, use $_)\n"; + $lastfound{$key} = $ARGV; + } +} + +# This routine records matches of shell master keys +sub shmaster { + local($key) = @_; + $shmaster{$key}++; # This symbol is wanted + return unless $opt_t; # Continue if trace option on + if ($lastfound{$key} ne $ARGV) { # Never mentionned for this file ? + $visited{$ARGV}++ || print $ARGV,":\n"; + print "\t$key\n"; + $lastfound{$key} = $ARGV; + } +} + +# Write obsolete symbols into the Wanted file for later perusal by -w. +sub add_obsolete { + local($file); # File where obsolete symbol was found + local($old); # Name of this old symbol + local($new); # Value of the new symbol to be used + foreach $key (sort keys %ofound) { + ($file, $old, $new) = ($key =~ /^(\S+)\s+(\S+)\s+(\S+)/); + if ($new =~ s/^\$//) { # We found an obsolete shell symbol + print WANTED "!$old\n"; + } else { # We found an obsolete C symbol + print WANTED "!>$old\n"; + } + } +} + +# Map obsolete symbols from Wanted file into %Obsolete and call dump_obsolete +# to actually build the Obsol_sh.U and Obsol_h.U files. Those will be needed +# during the Configure building phase to actually do the remaping. +# The obsolete symbols found are entered in the %ofound array, tagged as from +# file 'XXX', which is specially recognized by dump_obsolete. +sub map_obsolete { + open(WANTED, 'Wanted') || die "Can't open Wanted file.\n"; + local($new); # New symbol to be used instead of obsolete one + while () { + chop; + next unless s/^!//; # Skip non-obsolete symbols + if (s/^>//) { # C symbol + $new = $Obsolete{$_}; # Fetch new symbol + $ofound{"XXX $_ $new"}++; # Record obsolete match (XXX = no file) + } else { # Shell symbol + $new = $Obsolete{"\$$_"}; # Fetch new symbol + $ofound{"XXX \$$_ $new"}++; # Record obsolete match (XXX = no file) + } + } + close WANTED; +} + diff --git a/mcon/pl/xref.pl b/mcon/pl/xref.pl new file mode 100644 index 0000000..02f4164 --- /dev/null +++ b/mcon/pl/xref.pl @@ -0,0 +1,67 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: xref.pl,v $ +;# Revision 3.0.1.2 1995/09/25 09:20:05 ram +;# patch59: added empty p_layout stub for new ?Y: directives +;# +;# Revision 3.0.1.1 1993/10/16 13:56:23 ram +;# patch12: declared p_public for ?P: lines +;# +;# Revision 3.0 1993/08/18 12:10:31 ram +;# Baseline for dist 3.0 netwide release. +;# +;# Metaxref-dependent part of the dependency extranction. +;# +# Process the ?W: lines +sub p_wanted { + # Syntax is ?W:: + local($active) = $_[0] =~ /^([^:]*):/; # Symbols to activate + local($look_symbols) = $_[0] =~ /:(.*)/; # When those are used + local(@syms) = split(/ /, $look_symbols); # Keep original spacing info + $active =~ s/\s+/\n/g; # One symbol per line + + # Concatenate quoted strings, so saying something like 'two words' will + # be introduced as one single symbol "two words". + local(@symbols); # Concatenated symbols to look for + local($concat) = ''; # Concatenation buffer + foreach (@syms) { + if (s/^\'//) { + $concat = $_; + } elsif (s/\'$//) { + push(@symbols, $concat . ' ' . $_); + $concat = ''; + } else { + push(@symbols, $_) unless $concat; + $concat .= ' ' . $_ if $concat; + } + } + + local($fake); # Fake unique shell symbol to reparent C symbol + + # Now record symbols in master and wanted tables + foreach (@symbols) { + $cmaster{$_} = undef; # Asks for look-up in C files + # Make a fake C symbol and associate that with the wanted symbol + # so that later we know were it comes from + $fake = &gensym; + $cwanted{$_} = "$fake"; # Attached to this symbol + push(@Master, "?$unit:$fake=''"); # Fake initialization + } +} + +# Ingnore the following: +sub p_init {} +sub p_default {} +sub p_library {} +sub p_include {} +sub p_public {} +sub p_layout {} + diff --git a/mcon/pl/xwant.pl b/mcon/pl/xwant.pl new file mode 100644 index 0000000..31508eb --- /dev/null +++ b/mcon/pl/xwant.pl @@ -0,0 +1,149 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: xwant.pl,v $ +;# Revision 3.0 1993/08/18 12:10:32 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# These two arrays record the file names of the files which may (or may not) +;# contain shell or C symbols known by metaconfig. +;# @SHlist records the .SH files +;# @clist records the C-like files (i.e. .[chyl]) +;# +# Parse files and build cross references +sub build_xref { + print "Building cross-reference files...\n" unless $opt_s; + unless (-f $NEWMANI) { + &manifake; + die "No $NEWMANI--don't know who to scan.\n" unless -f $NEWMANI; + } + + open(FUI, "|sort | uniq >I.fui") || die "Can't create I.fui.\n"; + open(UIF, "|sort | uniq >I.uif") || die "Can't create I.uif.\n"; + + local($search); # Where to-be-evaled script is held + local($_) = ' ' x 50000 if $opt_m; # Pre-extend pattern search space + local(%visited); # Records visited files + local(%lastfound); # Where last occurence of key was + + # Map shell symbol names to units by reverse engineering the @Master array + # which records all the known shell symbols and the units where they + # are defined. + foreach $init (@Master) { + $init =~ /^\?(.*):(.*)=''/ && ($shwanted{"\$$2"} = $1); + } + + # Now we are a little clever, and build a loop to eval so that we don't + # have to recompile our patterns on every file. We also use "study" since + # we are searching the same string for many different things. Hauls! + + if (@clist) { + print " Scanning .[chyl] files for symbols...\n" unless $opt_s; + $search = ' ' x (40 * (@cmaster + @ocmaster)); # Pre-extend + $search = "while (<>) {study;\n"; # Init loop over ARGV + foreach $key (keys(cmaster)) { + $search .= "\$cmaster{'$key'} .= \"\$ARGV#\" if /\\b$key\\b/;\n"; + } + foreach $key (grep(!/^\$/, keys %Obsolete)) { + $search .= "&ofound('$key') if /\\b$key\\b/;\n"; + } + $search .= "}\n"; # terminate loop + print $search if $opt_d; + @ARGV = @clist; + # Swallow each file as a whole, if memory is available + undef $/ if $opt_m; + eval $search; + eval ''; + $/ = "\n"; + while (($key,$value) = each(cmaster)) { + next if $value eq ''; + foreach $file (sort(split(/#/, $value))) { + next if $file eq ''; + # %cwanted may contain value separated by \n -- take last one + @sym = split(/\n/, $cwanted{$key}); + $sym = pop(@sym); + $shell = "\$$sym"; + print FUI + pack("A35", $file), + pack("A20", "$shwanted{$shell}.U"), + $key, "\n"; + print UIF + pack("A20", "$shwanted{$shell}.U"), + pack("A25", $key), + $file, "\n"; + } + } + } + + undef @clist; + undef %cwanted; + undef %cmaster; # We're not building Configure, we may delete this + %visited = (); + %lastfound = (); + + if (@SHlist) { + print " Scanning .SH files for symbols...\n" unless $opt_s; + $search = ' ' x (40 * (@shmaster + @oshmaster)); # Pre-extend + $search = "while (<>) {study;\n"; + # All the keys already have a leading '$' + foreach $key (keys(shmaster)) { + $search .= "\$shmaster{'$key'} .= \"\$ARGV#\" if /\\$key\\b/;\n"; + } + foreach $key (grep (/^\$/, keys %Obsolete)) { + $search .= "&ofound('$key') if /\\$key\\b/;\n"; + } + $search .= "}\n"; + print $search if $opt_d; + @ARGV = @SHlist; + # Swallow each file as a whole, if memory is available + undef $/ if $opt_m; + eval $search; + eval ''; + $/ = "\n"; + while (($key,$value) = each(shmaster)) { + next if $value eq ''; + foreach $file (sort(split(/#/, $value))) { + next if $file eq ''; + print FUI + pack("A35", $file), + pack("A20", "$shwanted{$key}.U"), + $key, "\n"; + print UIF + pack("A20", "$shwanted{$key}.U"), + pack("A25", $key), + $file, "\n"; + } + } + } + + close FUI; + close UIF; + + # If obsolete symbols where found, write an Obsolete file which lists where + # each of them appear and the new symbol to be used. Also write Obsol_h.U + # and Obsol_sh.U in .MT for later perusal. + + &dump_obsolete; # Dump obsolete symbols if any + + # Clean-up memory by freeing useless data structures + undef @SHlist; + undef %shmaster; +} + +# This routine records matches of obsolete keys (C or shell) +sub ofound { + local($key) = @_; + local($_) = $Obsolete{$key}; # Value of new symbol + $ofound{"$ARGV $key $_"}++; # Record obsolete match + $cmaster{$_} .= "$ARGV#" unless /^\$/; # A C hit + $shmaster{$_} .= "$ARGV#" if /^\$/; # Or a shell one +} + diff --git a/pat/Jmakefile b/pat/Jmakefile new file mode 100644 index 0000000..3edf094 --- /dev/null +++ b/pat/Jmakefile @@ -0,0 +1,68 @@ +/* + * Jmakefile for patching tools. + */ + +;# $Id: Jmakefile,v 3.0.1.3 1995/07/24 09:57:21 ram Exp ram $ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: Jmakefile,v $ +;# Revision 3.0.1.3 1995/07/24 09:57:21 ram +;# patch56: was missing an entry for the patlog program +;# +;# Revision 3.0.1.2 1994/01/24 13:42:48 ram +;# patch16: added dependency generation stage +;# +;# Revision 3.0.1.1 1993/08/24 12:09:05 ram +;# patch3: added patnotify and patsnap +;# +;# Revision 3.0 1993/08/18 12:10:32 ram +;# Baseline for dist 3.0 netwide release. +;# + +/* BASE is used to give the extensions for pat* files. Usually, '//' can be + * used to specify a null expansion pattern, but some of those new smart cpp + * now think it's a up-to-end-of-line comment--why do they do that to us? + */ +BASE = /^^/ cil base diff make clean col name ftp send \ + index post notify snap log + +/* PAT is derived from BASE and is the list of all the files to produce */ +PAT = \ +|expand f!$(BASE)! + pat!f \ +-expand \\ + +NoManPages() /* There is a single man page for all tools */ +SimpleShellScriptTarget($(PAT)) + +>SCRIPTDIR /* Grrr... I have to find a nicer way!! */ +>MANSRC /* Idem!! */ + +InstallMultipleFlags($(PAT),$(SCRIPTDIR),-m 555) +InstallManPage(pat,$(MANSRC)) + +PATSH = \ +|expand f!$(PAT)! + !f.SH \ +-expand \\ + +>SED +>RM +>MKDEP + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(PATSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + diff --git a/pat/Makefile.SH b/pat/Makefile.SH new file mode 100755 index 0000000..8424f98 --- /dev/null +++ b/pat/Makefile.SH @@ -0,0 +1,269 @@ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL55] +: $X-Id: Jmake.tmpl,v 3.0.1.2 1995/01/11 14:50:21 ram Exp ram $ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +CURRENT=pat +DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` +echo "Extracting ${DIR}Makefile (with variable substitutions)" + +INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +DATE=`date` + +$spitshell >Makefile <>Makefile <<'!NO!SUBS!' +######################################################################## +# Jmake rules for building libraries, programs, scripts, and data files +# $X-Id: Jmake.rules,v 3.0.1.3 1995/03/21 08:35:28 ram Exp ram $ +######################################################################## +# Force 'make depend' to be performed first -- do not edit + +.FORCE_DEPEND:: + +all:: .FORCE_DEPEND + +######################################################################## +# Start of Jmakefile + +# $X-Id: Jmakefile,v 3.0.1.3 1995/07/24 09:57:21 ram Exp ram $ +# +# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# $X-Log: Jmakefile,v $ +# Revision 3.0.1.3 1995/07/24 09:57:21 ram +# patch56: was missing an entry for the patlog program +# +# Revision 3.0.1.2 1994/01/24 13:42:48 ram +# patch16: added dependency generation stage +# +# Revision 3.0.1.1 1993/08/24 12:09:05 ram +# patch3: added patnotify and patsnap +# +# Revision 3.0 1993/08/18 12:10:32 ram +# Baseline for dist 3.0 netwide release. +# + +BASE = // cil base diff make clean col name ftp send \ + index post notify snap log + +PAT = \ + pat \ + patcil \ + patbase \ + patdiff \ + patmake \ + patclean \ + patcol \ + patname \ + patftp \ + patsend \ + patindex \ + patpost \ + patnotify \ + patsnap \ + patlog + +all:: $(PAT) + +local_realclean:: + $(RM) $(PAT) + +pat: pat.SH + /bin/sh pat.SH + +patcil: patcil.SH + /bin/sh patcil.SH + +patbase: patbase.SH + /bin/sh patbase.SH + +patdiff: patdiff.SH + /bin/sh patdiff.SH + +patmake: patmake.SH + /bin/sh patmake.SH + +patclean: patclean.SH + /bin/sh patclean.SH + +patcol: patcol.SH + /bin/sh patcol.SH + +patname: patname.SH + /bin/sh patname.SH + +patftp: patftp.SH + /bin/sh patftp.SH + +patsend: patsend.SH + /bin/sh patsend.SH + +patindex: patindex.SH + /bin/sh patindex.SH + +patpost: patpost.SH + /bin/sh patpost.SH + +patnotify: patnotify.SH + /bin/sh patnotify.SH + +patsnap: patsnap.SH + /bin/sh patsnap.SH + +patlog: patlog.SH + /bin/sh patlog.SH + + +install:: $(PAT) + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in $(PAT); do \ + (set -x; $(INSTALL) -c -m 555 $$i $(SCRIPTDIR)); \ + done + +deinstall:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for i in $(PAT); do \ + (set -x; $(RM) $(SCRIPTDIR)/$$i); \ + done + +install.man:: pat.man + $(INSTALL) -c -m 444 pat.man $(MANSRC)/pat.$(L) + +deinstall.man:: + $(RM) $(MANSRC)/pat.$(L) + +PATSH = \ + pat.SH \ + patcil.SH \ + patbase.SH \ + patdiff.SH \ + patmake.SH \ + patclean.SH \ + patcol.SH \ + patname.SH \ + patftp.SH \ + patsend.SH \ + patindex.SH \ + patpost.SH \ + patnotify.SH \ + patsnap.SH \ + patlog.SH + +depend:: + ($(SED) '/^# DO NOT DELETE/q' Makefile && \ + grep '^\$$grep' $(PATSH) | \ + $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ + ) > Makefile.new + cp Makefile Makefile.bak + cp Makefile.new Makefile + $(RM) Makefile.new + +######################################################################## +# Common rules for all Makefiles -- do not edit + +emptyrule:: + +clean: local_clean +realclean: local_realclean +clobber: local_clobber + +local_clean:: + $(RM) core *~ *.o + +local_realclean:: local_clean + +local_clobber:: local_realclean + $(RM) Makefile config.sh + +Makefile.SH: Jmakefile + -@if test -f $(TOP)/.package; then \ + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; exit 0; fi + +Makefile: Makefile.SH + /bin/sh Makefile.SH + +tags:: + $(CTAGS) -w *.[ch] + $(CTAGS) -xw *.[ch] > tags + +local_clobber:: + $(RM) tags + +######################################################################## +# Empty rules for directories with no sub-directories -- do not edit + +install:: + @echo "install in $(CURRENT) done." + +deinstall:: + @echo "deinstall in $(CURRENT) done." + +install.man:: + @echo "install.man in $(CURRENT) done." + +deinstall.man:: + @echo "deinstall.man in $(CURRENT) done." +Makefiles:: + +Makefiles.SH:: + +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 +!NO!SUBS! +chmod 644 Makefile +$eunicefix Makefile + diff --git a/pat/README b/pat/README new file mode 100644 index 0000000..20e15ec --- /dev/null +++ b/pat/README @@ -0,0 +1,120 @@ +This is the root directory for pat tools. + +This directory contains an automatic patch generator. You must have RCS +to use this. You must also have run packinit in the top level directory +of your package to create a .package file. + +When you've modified a file in your package, the pat program is used to +control the whole process. The other programs can be called by hand, but +usually needn't be. Run pat from the top level directory of your package. + +The pat, patcil, patdiff, and patbase programs take a list of filenames as +arguments. Alternately, a -a means all files listed in MANIFEST. + +Patcil will create an RCS directory if necessary. However, it may not check in +things which require special initializaton properly. For example, if you +want to check in a shell script, you'd better make your RCS directory yourself +and then say + + rcs -i -c'# ' blurfl.xsh + +before running pat or patcil. Otherwise the RCS log may not be commented +properly. Unless of course you are using a standard extension (like .c for +a C file) or have placed the proper comments in front of the $Log marker +within the file itself--patcil will then correctly guess the type of +comment required. + +Patdiff will create a bugs directory in your top level directory, and will want +to find a patchlevel.h file in that same directory. Everything is done from +that top level directory--don't put any patchlevel.h or bugs directories in +your subdirectories. Each subdirectory has its own RCS directory though. + +Patpost, patsend and patftp may be used to post to Usenet, mail to someone, +or copy patches to your ftp directory. They take a destination and a list +of patches to process. + +Those pat tools are an hopefully enhanced version of the tools that +came with Larry Wall's dist 2.0. There are however a few new scripts: + + - patclean, which checks in the mods and removes the working files. + - patcol, which restores the files removed by a patclean. + - patname, which sets a symbolic version number. + +Here is the way I am using the pat tools... + +First, I set up a MANIFEST.new file. If you are converting an existing +distribution to use dist, the manifake script will convert a MANIFEST +into a MANIFEST.new (removing the possible archive number column). + +Then I run packinit to modify the version number and set up things +correctly. The package is then ready to be placed under pat control. +I make sure the file patchlevel.h is correctly set and I run: + + patcil -f -a -s + touch patchlevel.h + find . -name "*~" -exec /bin/rm -f {} \; -print + +There is a prototypical patchlevel.h file in this directory, so you +might want to have a look at it. + +[If you are planning on using the mailagent to send the patches (and sort +your mail -- that's its primary goal now), the you must make sure +the patchelevel.h file is locatated in the root directory of your package. +The mailagent program is available separately, and was posted on the +comp.sources.misc newsgroup] + +Now everything is ready. The distribution is frozen, the bugs directory +has been created. I issue a makedist -v to create the distribution kits. +Eventually I set up the mailagent so that people can request for the +distribution automatically. If I want to create a directory containing +the lattest sources (to be able to `kit' them to someone using the kit +program -- posted to comp.sources.unix), I use: + + makedist -c -@ + +for instance, for dist 2.9 at PL26 + + makedist -c dist-2.9@26 + +which I can then send to people directly with kit (which is NOT part +of this release). + +As I receive patches or find some bugs, I edit the files and make the +modifications. When I want to issue an official patch, I run: + + pat -n + +and one or more patches are issued. You can compress the patches in the +bugs subdirectory, since the mailpatch program knows about that. Also +patindex will correctly uncompress them. + +When I need to clean up the distribution directory, I use: + + patclean -a + +which checks in every changes and removes the working files. The whole +set of working files can then be restored by: + + patcol -a + +Sometimes, I made a couple of modification and I don't want to issue +a patch right now. I then run: + + patcil -a + +which checks in the changes. You can run this as many times as you want, +because patcil will skip unchanged file and remembers the last time you +issued a patch. + +If you are still using RCS 4.3, be sure you use makedist and not your +own shell archiver, as the $Locker symbol has an annoying expansion +which makes patch to fail when applyed. I'm not sure this was correctly +fixed with RCS 5.5 as I am not using it yet for various reasons. + +In any case, if you are using the copyright expansion feature (i.e. the +stuffing of the COPYRIGHT token surrounded by '@' -- can't do it here +or it will get expanded...), then you must use makedist to make sure +the copyright is properly written in all your files. Distributing files +with an un-expanded COPYRIGHT token in them would be a disaster, since +the patching system will also expand them before building a patch and +some of your hunks may not apply correctly. diff --git a/pat/pat.SH b/pat/pat.SH new file mode 100755 index 0000000..6b7d52d --- /dev/null +++ b/pat/pat.SH @@ -0,0 +1,154 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/pat (with variable substitutions)" +cat >pat < +# +# $Log: pat.SH,v $ +# Revision 3.0.1.5 1994/10/29 16:37:53 ram +# patch36: now unlinks all the files created by patlog in bugs +# +# Revision 3.0.1.4 1994/01/24 14:29:17 ram +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.3 1993/08/25 14:04:35 ram +# patch6: removal of patch temporary files did not work with gaps +# +# Revision 3.0.1.2 1993/08/24 12:14:39 ram +# patch3: now removes older patch temporary files within bugs +# +# Revision 3.0.1.1 1993/08/19 06:42:31 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:36 ram +# Baseline for dist 3.0 netwide release. +# + +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +!GROK!THIS! +cat >>pat <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("ahmnV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +&readpackage; + +if (-f 'patchlevel.h') { + open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; + while () { + $bnum = $1 if /^#define\s+PATCHLEVEL\s+(\d+)/; + } + die "$progname: malformed patchlevel.h file.\n" if $bnum eq ''; + ++$bnum; +} else { + $bnum=1; +} + +if ($opt_n) { + &newer; # Look for files newer than patchlevel.h +} elsif ($opt_a) { + open(MANI,"MANIFEST.new") || die "No MANIFEST.new found.\n"; + @ARGV = (); + while () { + s|^\./||; + next if m|^patchlevel.h|; # This file is built by hand + chop; + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MANI; +} elsif ($opt_m) { + open(MODS,"bugs/.mods$bnum") || die "$progname: no modification found.\n"; + @ARGV = (); + while () { + next if m|^patchlevel.h$|; # This file is built by hand + chop; + ($_) = split(' '); + push(@ARGV,$_); + } + close MODS; +} + +# Remove older patch temporary files + +@patlist = &patseq($bnum - 1); +foreach $cpat (@patlist) { + unlink ; + unlink ; +} + +# Since we're about to launch other pat exectuables, disable ~/.dist_profile +# to protect them if they added some weird switches we don't need... + +$ENV{'DIST'} = '/dev/null'; # Disable ~/.dist_profile + +system 'perl', '-S', 'patcil', '-p', @ARGV; + +# Update MANIFEST if necessary, then patcil it. + +if (-f 'MANIFEST' && `diff MANIFEST.new MANIFEST 2>/dev/null` ne '') { + system 'cp', 'MANIFEST.new', 'MANIFEST'; + system 'perl', '-S', 'patcil', '-p', 'MANIFEST'; + push(@ARGV, 'MANIFEST'); +} + +system 'perl', '-S', 'patdiff', @ARGV; +system 'perl', '-S', 'patmake'; + +sub usage { + print STDERR "Usage: $progname [-ahmnV] [filelist]\n"; + print STDERR " -a : all the files in MANIFEST.new\n"; + print STDERR " -h : print this message and exit\n"; + print STDERR " -m : all the modified files (which have been patciled)\n"; + print STDERR " -n : all the files newer than patchlevel.h\n"; + print STDERR " -V : print version number and exit\n"; + exit 1; +} + +!NO!SUBS! +$grep -v '^;#' ../pl/newer.pl >>pat +$grep -v '^;#' ../pl/package.pl >>pat +$grep -v '^;#' ../pl/patseq.pl >>pat +$grep -v '^;#' ../pl/tilde.pl >>pat +$grep -v '^;#' ../pl/profile.pl >>pat +chmod +x pat +$eunicefix pat diff --git a/pat/pat.man b/pat/pat.man new file mode 100644 index 0000000..2d46a8c --- /dev/null +++ b/pat/pat.man @@ -0,0 +1,513 @@ +.rn '' }` +''' $Id: pat.man,v 3.0.1.7 1997/02/28 16:32:45 ram Exp ram $ +''' +''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +''' +''' You may redistribute only under the terms of the Artistic Licence, +''' as specified in the README file that comes with the distribution. +''' You may reuse parts of this distribution only within the terms of +''' that same Artistic Licence; a copy of which may be found at the root +''' of the source tree for dist 4.0. +''' +''' $Log: pat.man,v $ +''' Revision 3.0.1.7 1997/02/28 16:32:45 ram +''' patch61: documents contents of the message sent by patnotify +''' +''' Revision 3.0.1.6 1995/09/25 09:20:41 ram +''' patch59: new -i option for patsend to add extra instructions +''' +''' Revision 3.0.1.5 1995/05/12 12:25:28 ram +''' patch54: updated my e-mail address +''' +''' Revision 3.0.1.4 1994/10/29 16:38:31 ram +''' patch36: documents new patlog script and the files it uses +''' patch36: the RCS layer section has been extended slightly +''' +''' Revision 3.0.1.3 1993/08/27 14:40:19 ram +''' patch7: random cleanup +''' +''' Revision 3.0.1.2 1993/08/25 14:05:02 ram +''' patch6: new -q option for patsend and patnotify +''' +''' Revision 3.0.1.1 1993/08/24 12:15:42 ram +''' patch3: added patnotify and patsnap +''' patch3: patcol has a new -S option +''' patch3: the users file built by mailagent is now listed under FILES +''' +''' Revision 3.0 1993/08/18 12:10:37 ram +''' Baseline for dist 3.0 netwide release. +''' +.de Sh +.br +.ne 5 +.PP +\fB\\$1\fR +.PP +.. +.de Sp +.if t .sp .5v +.if n .sp +.. +''' +''' Set up \*(-- to give an unbreakable dash; +''' string Tr holds user defined translation string. +''' +.ie n \{\ +.tr \(*W-\*(Tr +.ds -- \(*W- +.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +.ds L" "" +.ds R" "" +.ds L' ' +.ds R' ' +'br\} +.el\{\ +.ds -- \(em\| +.tr \*(Tr +.ds L" `` +.ds R" '' +.ds L' ` +.ds R' ' +'br\} +.TH PAT 1 ram +.SH NAME +pat \- patch generator tools +.SH SYNOPSIS +.B pat +[ +.B \-ahmnV +] [ +.I filelist +] +.br +.B patcil +[ +.B \-abfhnpqsV +] [ +.I filelist +] +.br +.B patdiff +[ +.B \-ahnV +] [ +.I filelist +] +.br +.B patbase +[ +.B \-ahV +] [ +.I filelist +] +.br +.B patlog +[ +.B \-hnruV +] +.br +.B patmake +[ +.B \-hV +] +.br +.B patsend +[ +.B \-hiquV +] [ +.I patchlist +] [ +.I recipients +] +.br +.B patnotify +[ +.B \-hquV +] [ +.I recipients +] +.br +.B patpost +[ +.B \-hrV +] +.I patchlist +.I newsgroups +.br +.B patftp +[ +.B \-hV +] [ +.I patchlist +] +.br +.B patname +[ +.B \-ahnmV +] +.B \-v +.I version +[ +.I filelist +] +.br +.B patsnap +[ +.B \-ahV +] [ +.B \-o +.I snapshot +] [ +.I filelist +] +.br +.B patcol +[ +.B \-achnmsCV +] [ +.B \-d +.I directory +] [ +.B \-f +.I mani +] [ +.B \-S +.I snap +] [ +.I filelist +] +.br +.B patclean +[ +.B \-ahnmV +] [ +.I filelist +] +.br +.B patindex +.SH DESCRIPTION +.I Pat +and its associated programs generate patches for any package that has been +stored under RCS. +These programs hide many of the details of RCS that get in your way when +constructing and maintaining a package. +All you need to do to create a new patch is to edit your files, run pat, +and furnish some descriptions to RCS and in the generated patch file. +Details such as how to initialize a new RCS file, what the comment string should +be, how create a new branch, +how to deal with subdirectories, how to do diffs and how to +organize the patch file are handled automatically. +.PP +Before using any of the pat programs you must initialize your package by +running packinit in the top-level directory of your package. +This produces a .package file that all of the dist programs make use of. +.PP +In any of the programs that want a filelist, if you specify +.B \-a +instead, +all files in MANIFEST.new will be processed. +In any of the programs that want a patchlist, a null patchlist means the +current patch. +You may use hyphens, commas and spaces to delimit patch numbers. +If the right side of a hyphen is the null string, the current patchlevel +is assumed as the maximum value. All the programs invoked with \fB\-h\fR +will print a small usage message with the meaning of each available options. +The \fB\-V\fR option gives the current version number. +.PP +Pat itself is a wrapper program that calls patcil, patdiff, and patmake. +Usually you can just invoke pat and ignore all the others. +Pat will update the MANIFEST file, if necessary (it will be an +exact copy of the MANIFEST.new file, provided that a MANIFEST already +existed), eventually calling patcil on it. +.PP +If you specify +.B \-n +instead of a filelist, pat will find all files that are +newer than patchlevel.h, put you into an editor to trim down the list, +then use that file list. +If every file of the list is removed, \fIpat\fR will be aborted. +.PP +.I Patcil +is used to do a ci -l on any listed files. +(It is assumed that you always want to keep your files checked out.) +In addition to the +.B \-a +switch, there is a +.B \-b +switch which does a quick checkin of +a set of files. +Instead of calling rcs on each file, it calls rcs on the whole list of +files. +This is useful for checking in a trunk revision. +When you are checking in a new trunk revision you might also want to use +the +.B \-s +flag which will strip out old RCS Log entries from the previous revision +so that you can start over fresh. +You probably should also use a +.B \-f +which is passed through to the ci to force unchanged files to be checked in. +To check in a new trunk revision, I say +.nf + + patcil -s -f -a + +.fi +.PP +Patcil will ask for the log entry instead of letting ci do it, and has a little +prompter built in that lets you manipulate the message in various ways. +Type h for a listing of what you can do. +One of the nicest things is that you can pop up into an editor, optionally +with a diff listing of the changes since the last patch, in case you've +forgotten what you changed. +If you type a CR as the first thing, it includes the +previous log message. +Exit the prompter with a CR. +.PP +There are two different ways to use patcil. +You can either call patcil yourself, or let pat call it for you. +It doesn't matter how many times you call patcil before running pat, since +patdiff knows what the last patch base is to compare with. +Patcil can be called in any of your directories; the other programs must +be called in your top-level directory (or in bugs, when meaningful). +.PP +When you are creating a new file at a given patchlevel, you must patcil it +with the +.B \-p +option. Otherwise, it will simply be checked-in as +a new trunk revision. The name of the file will be added to the MANIFEST.new +if it does not already appear in it. If the name is found along with a +description, that description will be passed through to rcs to properly +initialize the RCS file. +.PP +.I Patbase +can be used to reset the patch base to the current version when +you've scrapped the previous patch sequence and are making a new distribution +kit. +What it really does is an rcs -Nlastpat:REV, where REV is the current +revision. +If patdiff blows up and you want to set the patch base back to some previous +version, you have to call rcs -Nlastpat:REV yourself. +.PP +.I Patdiff +actually does the diffs that go into the patch, comparing whatever +version -Nlastpat points to with the most recently checked in version. +It then updates -Nlastpat to point to the current version. +It leaves the diff sitting in the bugs subdirectory for patmake to pick up. +It can either use rcsdiff, or a diff command of your choice specified when +you run packinit, in case your diff is better than rcsdiff. +.PP +.I Patlog +is invoked by \fIpatmake\fR usually, to update the \fIChangeLog\fR file +(or whatever name that file has been given when you ran \fIpackinit\fR). +It will gather log messages and launch an editor for you to make the +necessary updates. +If you have configured your package to also include RCS logs +in the \fIChangeLog\fR, another editor session will be launched for those +too. Finally, a final log is built as a candidate entry for \fIChangeLog\fR, +which you may also modify as you wish. +.PP +When you don't have configured a \fIChangeLog\fR file, \fIpatlog\fR will only +gather the information it needs to pass on to \fIpatmake\fR and will exit. +If you wish to call it yourself, you must do that after a least one +sucessfull \fIpatdiff\fR run. I recommend using the \fB\-n\fR option the +first time, and then use the \fB\-u\fR option along with \fB\-n\fR on +subsequent runs to recreate files only when needed. The \fB\-r\fR option +(which supersedes \fB\-u\fR) prevents \fIpatlog\fR from recreating an +existing file, even if it is out of date. +.PP +.I Patlog +will call \fIpatcil\fR and \fIpatdiff\fR on your \fIChangeLog\fR file +(after having stuffed the candidate log entry you edited at the top of the +file), unless prevented to do so by the \fB\-n\fR option. This means the +issued patch will update \fIChangeLog\fR with current patch information, as +you would expect it. +.PP +.I Patmake +combines all the pieces of the patch into one file and invokes +an editor so you can add the subject and description. +It throws all your log messages in as Subjects and as Description, under +the assumption +that it's easier to delete what you don't want than to remember everything +you did. +You'll also want to expand each item in the Description so they don't just +repeat the Subject lines. If you have a \fIChangeLog\fR file, this must have +been done already, or your \fIChangeLog\fR will not accurately represent +what is described in the patch, given that it has already been updated +when \fIpatmake\fR puts together all the pieces (see the note +about \fIpatlog\fR above). +.PP +Big patches will be split in order to keep size of each patch to a reasonable +size. This is handled automatically, so you don't have to bother with it. +The priority of each patch is merely intuited by \fIpatmake\fR, given the +assumption that small changes have a great priority. +.PP +Patsend, patpost and patftp are used to distribute your patches to the world. +.I Patsend +mails a set of patches to a set of recipients. The \fB\-u\fR switch adds all +the currently registered users who have asked for patches to be mailed to +them, as well as the recipients specified while running \fIpackinit\fR. +The \fB\-i\fR switch includes information with the patch about how the user +may deregister themselves so they do not receive future patches automatically; +this is also the default when the \fB\-u\fR switch is used. +.I Patpost +posts a set of patches to a set of newsgroups. +.I Patftp +merely copies the patch into your public ftp directory. +.PP +.I Patnotify +simply notifies users that a new patch has been released so that +they can retrieve it by themselves from an archive site or via e-mail if they +are interested. The \fB\-u\fR switch can be used to include all the currently +registered users who have asked for such a notification. The message includes +the patch priority and description, as well as instructions on how to +automatically request the patch (which will work only if you +have \fImailagent\fR installed). +.PP +Both \fIpatsend\fR and \fIpatnotify\fR let you edit the address list before +actually sending anything, unless you add the \fB\-q\fR option. +.PP +.I Patname +can be used to tag a set of files with a symbolic name (specified with +\fB\-v\fR). This will set the name for the most recent revision of each +file. +.PP +.I Patsnap +will get a snapshot of your release by creating a SNAPSHOT file (name can be +changed via \fB\-o\fR) listing the file names and the latest RCS revision +number for that file. Such snapshots can be used to identify the release +at some random patchlevel and then later be able to retrieve it by feeding +the snapshot file to \fIpatcol\fR. +.PP +.I Patcol +will check out a locked version of a file, eventually in an alternate +directory (specified with \fB\-d\fR, thus mirroring the distribution tree). +All the files which have no RCS counterpart (e.g. patchlevel.h) will be +simply copied by patcol. This is used by makedist to fake the distribution +before making the kits. By default, patcol will not do the copyright expansion +processing, but clients like \fImakedist\fR force it by using its \fB\-C\fR +option. Alternatively, you may force copying of the checked-out version +into a directory by using the \fB\-c\fR switch in conjunction with \fB\-d\fR +(or that former switch is simply ignored). +.PP +.I Patcol +can also take its file list from a SNAPSHOT file via the \fB\-S\fR switch, in +which case it will check out the files using the RCS version specified by the +snapshot file, such as one created by \fIpatsnap\fR. You may instead specify +\fB-a\fR, \fB\-m\fR or \fB\-n\fR to respectively use all the files in +MANIFEST.new, all the modified files (the one which have been \fIpatcil\fRed), +or all the files newer than \fIpatchlevel.h\fR. +.PP +.I Patclean +will remove the working files after having checked in all the +changes. You may restores your working files by using patcol. +.PP +.I Patindex +may be used from the top level directory or within the \fIbugs\fR directory. +It will list all the patches and their \fISubject:\fR lines. This program +knows about compressed patches and will decompress them while producing +the listing. +''' +''' R C S L a y e r +''' +.SH RCS LAYER +This section describes the RCS layer, in case something in the tools breaks, +so that you may fix your RCS files and restart the operation. +.PP +All the patch tools get the main RCS trunk revision number out of your +\&\fI.package\fR files, say it's 2.5. Then, at the time you ran \fIpackinit\fR, +you have chosen a branch for patches, usually number 1, which means all your +modifications will be stored on the 2.5.1 RCS branch. The tools will create +the branch for you when the time comes. +.PP +Each last released revision is tagged with an RCS \fIlastpat\fR symbol. When +the patch is built by \fIpatdiff\fR, the lattest version on the 2.5.1 branch +is compared with the one tagged as \fIlastpat\fR. This is why you may safely +issue more than one \fIpatcil\fR beffore issuing the patch and still have +it all worked out. Of course \fIpatdiff\fR will move the \fIlastpat\fR +tag to the lattest branch revision after processing a given file. +.PP +All the log messages and the modified files are kept in your \fIbugs\fR +directory, in hidden files (name starting with a dot). Those logs will be +collected when the patch is issued and the modified files are used by +\&\fIpat\fR's \fB\-m\fR switch. +.PP +.I Patdiff +collects its patch hunks under the \fIbugs\fR directory, in files +terminating with a \fI.nn\fR extension, where \fInn\fR represents the +current patch level + 1. (Which is going to be the next patchlevel when the +patch will be made by \fIpatmake\fR, unless it is too big to fit in one +file). +.PP +.I Patlog +prepares a set of files for \fIpatmake\fR: the \fI.clog\fR file collects +the information that will go under the Description: section within the +patch, and \fI.xlog\fR ones collect the \fIChangeLog\fR candidate entry. +Finally, \fI.rlog\fR files store the RCS information that is to be included +in the \fIChangeLog\fR, if requested. Note that the topmost three lines +are garbage and are ignored by all the tools handling those files. +.PP +In order to start up a new baseline (i.e. to change the RCS trunk revision +number), you need to rerun \fIpackinit\fR and change that number. Then issue +a new \fIpatcil\fR, probably with the \fB\-s\fR, \fB\-a\fR and \fB\-f\fR +options... +.SH FILES +.PD 0 +.TP 15 +bugs/*.[0-9]+ +Diffs for each file, gathered by \fIpatmake\fR to create a patch +.TP +bugs/patch* +Issued patches (can be compressed with \fIcompress\fR only) +.TP +bugs/.clog[0-9]+ +Description to be filled into the patch (or the first part if the patch is +split into several parts). +.TP +bugs/.logs[0-9]+ +Log messages for that patch +.TP +bugs/.mods[0-9]+ +Files modified in that patch (checked in with \fIpatcil\fR) +.TP +bugs/.pri[0-9]+ +The priority of the next patch, computed +by \fIpatlog\fR for \fIpatmake\fR's perusal. +.TP +bugs/.rlog[0-9]+ +The RCS logs computed by \fIpatlog\fR. +.TP +bugs/.subj[0-9]+ +The Subject: lines for the next patch, computed +by \fIpatlog\fR for \fIpatmake\fR's perusal. +.TP +bugs/.xlog[0-9]+ +The candidate entry for \fIChangeLog\fR. +.TP +users +File filled in by \fImailagent\fR's "@SH package" command, normally +issued by Configure, recording some of the users who kindly registered +themselves. +.PD +.SH ENVIRONMENT +.PD 0 +.TP 15 +PAGER +Which pager to use in patcil (overrides default) +.TP +EDITOR +What editor should be used (overrides default) +.TP +VISUAL +Same role as EDITOR but this one is checked first +.PD +.SH SEE ALSO +makedist(1), metaconfig(1). +.SH BUGS +Most of this should be built into RCS. +.SH AUTHORS +Larry Wall (version 2.0). +.br +Raphael Manfredi . +.rn }` '' diff --git a/pat/patbase.SH b/pat/patbase.SH new file mode 100755 index 0000000..d5d67ad --- /dev/null +++ b/pat/patbase.SH @@ -0,0 +1,122 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patbase (with variable substitutions)" +cat >patbase < +# +# $Log: patbase.SH,v $ +# Revision 3.0.1.3 1994/01/24 14:29:24 ram +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.2 1993/08/24 12:15:58 ram +# patch3: random cleanup +# +# Revision 3.0.1.1 1993/08/19 06:42:32 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:38 ram +# Baseline for dist 3.0 netwide release. +# + +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +!GROK!THIS! +cat >>patbase <<'!NO!SUBS!' + +$progname = &profile; # My name + +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("ahV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +&readpackage; + +$RCSEXT = ',v' unless $RCSEXT; +$TOPDIR = ''; # We are at the top-level directory + +if ($opt_a) { + open(MANI,"MANIFEST.new") || die "No MANIFEST.new found.\n"; + @ARGV = (); + while () { + chop; + s|^\./||; + next if m|^patchlevel.h|; # Special file + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MANI; +} + +foreach $file (@ARGV) { + $files = &rcsargs($file); + @files = split(' ',$files); + $revs=0; + $rlog = `rlog -r$baserev -r$revbranch $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + if (!$revs) { + print "$progname: $file has never been checked in--checking in...\n"; + system 'perl', '-S', 'patcil', $file; + } + elsif ($revs == 1) { + print "Last revision for $file is $baserev.\n"; + system 'rcs', "-Nlastpat:$baserev", @files; + } + else { + ($lastrev) = ($rlog =~ /revision $revbranch\.(\d+)/); + print "Last revision for $file is $revbranch.$lastrev.\n"; + system 'rcs', "-Nlastpat:$revbranch.$lastrev", @files; + } +} + +sub usage { + print STDERR "Usage: $progname [-ahV] [filelist]\n"; + print STDERR " -a : all the files in MANIFEST.new\n"; + print STDERR " -h : print this message and exit\n"; + print STDERR " -V : print version number and exit\n"; + exit 1; +} + +!NO!SUBS! +$grep -v '^;#' ../pl/package.pl >>patbase +$grep -v '^;#' ../pl/rcsargs.pl >>patbase +$grep -v '^;#' ../pl/comment.pl >>patbase +$grep -v '^;#' ../pl/tilde.pl >>patbase +$grep -v '^;#' ../pl/profile.pl >>patbase +chmod +x patbase +$eunicefix patbase diff --git a/pat/patchlevel.h b/pat/patchlevel.h new file mode 100644 index 0000000..66b289a --- /dev/null +++ b/pat/patchlevel.h @@ -0,0 +1,34 @@ +/* + * This is a prototypical patchlevel.h file. Only the line defining + * the PATCHLEVEL symbol is taken into account when patching, so be + * sure to make changes to this file ONLY when you start a new release + * and, of course, before running patcil... + * + * This file must appear in your MANIFEST.new, but it will never be + * checked in by the pat tools. It is automatically updated when a new + * patch is issued. + * + * When using the '-n' option in some pat* scripts, this file is + * taken as a timestamp. So it is best to avoid manual editing unless + * you know what you are doing. + */ + +/* + * $Id$ + * + * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi + * + * You may redistribute only under the terms of the Artistic Licence, + * as specified in the README file that comes with the distribution. + * You may reuse parts of this distribution only within the terms of + * that same Artistic Licence; a copy of which may be found at the root + * of the source tree for dist 4.0. + * + * $Log: patchlevel.h,v $ + * Revision 3.0 1993/08/18 12:10:39 ram + * Baseline for dist 3.0 netwide release. + * + */ + +#define VERSION 3.0 /* For instance */ +#define PATCHLEVEL 0 /* This line is a mandatory */ diff --git a/pat/patcil.SH b/pat/patcil.SH new file mode 100755 index 0000000..6e181d3 --- /dev/null +++ b/pat/patcil.SH @@ -0,0 +1,541 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patcil (with variable substitutions)" +$cat >patcil < +# +# $Log: patcil.SH,v $ +# Revision 3.0.1.4 1994/10/29 16:42:12 ram +# patch36: now honors the VISUAL and EDITOR environment variables +# patch36: newer RCS programs chop trailing spaces in log messages +# patch36: separated V/E and v/e commands +# patch36: new 'v' command to edit the file being patcil'ed +# patch36: added hook for 'V' command (not implemented yet) +# +# Revision 3.0.1.3 1994/01/24 14:30:04 ram +# patch16: now prefix error messages with program's name +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.2 1993/08/25 14:05:35 ram +# patch6: moved geteditor to ../pl/editor.pl +# +# Revision 3.0.1.1 1993/08/19 06:42:33 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:40 ram +# Baseline for dist 3.0 netwide release. +# + +\$defeditor = '$defeditor'; +\$pager = '$pager'; +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +!GROK!THIS! +cat >>patcil <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("abfhnpqsV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$RCSEXT = ',v' unless $RCSEXT; +$PAGER = $ENV{'PAGER'} || "$pager"; +$EDITOR = &geteditor; + +system 'mkdir', 'RCS' unless -d 'RCS'; + +chop($pwd = `pwd`) unless -f '.package'; +until (-f '.package') { + die "$progname: no .package file! Run packinit.\n" unless $pwd; + chdir '..' || die "Can't cd .."; + $pwd =~ s|(.*)/(.*)|$1|; + $prefix = $2 . '/' . $prefix; +} +if ($prefix) { + for (@ARGV) { + s/^/$prefix/ unless m|^[-/]|; + } +} + +# We now are at the top level + +&readpackage; + +if (-f 'patchlevel.h') { + open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; + while () { + $bnum = $1 if /^#define\s+PATCHLEVEL\s+(\d+)/; + } + die "$progname: malformed patchlevel.h file.\n" if $bnum eq ''; + ++$bnum; +} else { + $bnum=1; +} + +system 'mkdir', 'bugs' unless -d 'bugs'; +open(LOGS,">>bugs/.logs$bnum"); # Remember logs for patmake +open(MODS,">>bugs/.mods$bnum"); # Remember modified files + +push(@sw,'-q') if $opt_q; +push(@sw,'-f') if $opt_f; + +if ($opt_a) { + open(MANI,"MANIFEST.new") || die "$progname: can't read MANIFEST.new: $!\n"; + @ARGV = (); + while () { + chop; + s|^\./||; + next if m|^patchlevel.h|; # Special file + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MANI; +} elsif ($opt_n) { + &newer; +} + +@filelist = @ARGV; + +sub CLEANUP { + print "$progname: Warning: restore $ARGV\n"; + exit 1; +} + +if ($opt_s) { + open(TTY,">/dev/tty"); + select(TTY); + $| = 1; + select(stdout); + $SIG{'INT'} = 'CLEANUP'; + while (<>) { + if (/^(.*)\$Log[:\$]/) { + $comment = $1; + $comment =~ s/\s+$//; # Newer RCS chop spaces on emtpy lines + $len = length($comment); + print; + $lastnl = 1; + logline: while (<>) { + $c = substr($_,0,$len); + last logline unless $c eq $comment; + $_ = substr($_,$len,999); + if ($lastnl) { + unless (/^\s*Revision\s+\d/) { + $_ = $comment . $_; + last logline; + } + $lastnl = 0; + } else { + $lastnl = 1 if /^\s*$/; + } + } + } + } + continue { + print; + if ($ARGV ne $oldargv) { + print TTY "$progname: stripping $ARGV...\n"; + $oldargv = $ARGV; + } + } + $SIG{'INT'} = 'DEFAULT'; + close TTY; +} + +if ($opt_b) { + $flist = &rcsargs(@filelist); + @flist=split(' ',$flist); + system 'rcs', '-u', @flist; + system 'rcs', "-l$revbranch", @flist; + system 'ci', '-l', "-r$revbranch", @sw, @flist; + exit 0; +} + +open(MANI,"MANIFEST.new") || die "$progname: can't open MANIFEST.new: $!\n"; +while () { + # Find how many spaces the user wants before comments + $space || /(\S+\s+)\S+/ && ($space = length($1)); + ($file,$file_comment) = m|(\S+)\s+(.*)|; + $inmani{$file} = 1; # File is listed in MANIFEST + $comment{$file} = $file_comment; # Save comments +} +close MANI; +$space = 29 unless $space; # Default value + +file: foreach $file (@filelist) { + $files = &rcsargs($file); + @files = split(' ',$files); + $file = $files[1] if $file =~ /\.$RCSEXT$/; + unless ($inmani{$file}) { + print "$file does not appear to be in your MANIFEST.new--add? [y] "; + $ans = ; + if ($ans !~ /^n/i) { + print "MANIFEST.new comment? "; + $file_comment = ; + chop($file_comment); + $spacenum = $space - length($file); + $blank = " "; + $blank = " " x $spacenum unless $spacenum < 1; + `echo '${file}${blank}$file_comment' >>MANIFEST.new`; + if (-f 'MANIFEST') { + print "(Also adding file to your MANIFEST)\n"; + # Add a (new) at the end, so the two manifests will + # differ and thus manifest will get patched correctly. + `echo '${file}${blank}$file_comment (new)' >>MANIFEST`; + print MODS "MANIFEST\n"; + } + } else { + $file_comment = ""; # No file, no comment + } + } + $is_first = 0; # Suppose this is not the first cil + $revs = 0; # Makes revs a numeric variable + $rlog = `rlog -r$baserev -r$revbranch $files 2>&1`; + ($total) = ($rlog =~ /total revisions: (\d+)/); + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + $comment = &rcscomment($file); + if (!$revs) { + if ($total) { + if ($rlog !~ /locks:\s*;/) { + system 'rcs', '-u', @files; # unlock branch + } + # New trunck revision + system 'rcs', '-l', @files; # lock trunk + } + else { + $file_comment = $comment{$file} if $inmani{$file}; + if ($comment ne '') { + &feed($file_comment, 'rcs', '-i', "-c$comment", @files); + } else { + &feed($file_comment, 'rcs', '-i', @files); + } + } + if ($opt_p) { # check in null as trunk revision + rename($file, "$file.xxx"); + `cp /dev/null $file` unless -f $file; + &cil_col("empty\n", $baserev); + system 'rcs', "-Nlastpat:$baserev", @files; + rename("$file.xxx", $file); + $mess = &getlog($file); + next file if $mess eq 'nope'; + system 'rcs', '-u', @files; # Unlock trunck + &feed($mess, 'ci', "-l$revbranch", @sw, @files) unless $?; + } else { + $is_first = 1; # This is the first cil + $mess = &getlog($file); + next file if $mess eq 'nope'; + &cil_col($mess, $baserev); + system 'rcs', "-Nlastpat:$baserev", @files; + } + } else { + if (!$opt_f) { + if ($revs == 1) { + $delta = `rcsdiff -r$baserev $files 2>/dev/null`; + } else { + $delta = `rcsdiff -r$revbranch $files 2>/dev/null`; + } + if ($delta eq '') { # No change in file + print "$progname: no changes in $file since last patcil.\n"; + next; # Skip file + } + } + if ($revs == 1) { + $mess = &getlog($file); + next file if $mess eq 'nope'; + &cil_cil($mess, $revbranch); + } else { + $mess = &getlog($file); + next file if $mess eq 'nope'; + &cil_col($mess, $revbranch); + } + } +} + +# Used for the first revisions on a branch +sub cil_cil { + local($mess) = shift(@_); + local($rev) = shift(@_); + if (&feed($mess, 'ci', @sw, "-l$rev", @files)) { + print "$progname: unlocking and trying again...\n"; + system 'rcs', '-u', @files; + &feed($mess, 'ci', @sw, "-l$rev", @files) unless $?; + } +} + +# Run a ci -l on the file. If this fails, try to lock the file first. +# If this fails again, try again with a separate checkout. +sub cil_col { + local($mess) = shift(@_); + local($rev) = shift(@_); + if (&feed($mess, 'ci', @sw, "-l$rev", @files)) { + print "$progname: locking and trying again...\n"; + if ($rev =~ /\d+\.\d+\.\d+/) { + system 'rcs', "-l$rev", @files; # Lock branch + } else { + system 'rcs', '-l', @files; # Lock trunck + } + if (&feed($mess, 'ci', @sw, "-l$rev", @files)) { + print "$progname: trying again with separate checkout...\n"; + if (&feed($mess, 'ci', @sw, "-r$rev", @files)) { + system 'rcs', "-u$rev", @files unless $?; + system 'co', "-l$rev", @files unless $?; + } else { + print "$progname: sorry, giving up...\n"; + } + } + } +} + +sub feed { + local($mess) = shift(@_); + open(FORK,"|-") || exec @_; + print FORK $mess; + close FORK; + $?; +} + +sub getlog { + local($file) = @_; + local($mess) = ''; + local($prefix) = "patch$bnum: "; + local($prompt) = $comment; + local($len); + $prompt = '>> ' unless $prompt; + $prefix = '' if $is_first; + print "Type log message for $file (finish with ., CR for previous):\n"; + try: for (;;) { + line: for (print "$prompt$prefix";;print "$prompt$prefix") { + if ($always) { + print "\n"; + $line = ''; + } else { + $line = ; + } + if ($line =~ /^\.?$/) { + if ($mess) { + last line; + } else { + $line = 'p'; + } + } + if ($line =~ /^[h?]$/) { + print " +CR or . Terminate log message. +! Start command in a subshell. +D Print out diff listing since last patch. +N Give name of the current file. +E Call editor for log message with a diff listing. +V Call editor for file with a context diff added to HISTORY. +X Extract HISTORY and append it to current log message. +a Always use this message. +d Print out diff listing since last patcil. +f Forget message I have so far. +h or ? This help message. +l List what I have so far. +n Forget this file; go to next file if any. +p Append previous message. +r Print out the rlog for this file. +e Call editor for log message. +v Call editor for file. +x Toggle patch# prefix. + +"; + next line; + } + if ($line =~ /^!(.*)$/) { + $_ = $1; + $_ = ($ENV{'SHELL'} || "/bin/sh") if $1 eq ''; + system $_; + next line; + } + if ($line =~ /^E$/) { + $mess .= "\n" . `rcsdiff -c -rlastpat $files`; + } + if ($line =~ /^e$/) { + $mess = &edit($mess); + next line; + } + if ($line =~ /^V$/) { + ######## FIXME ######### + # Will do something like: + # &add_history($file, `rcsdiff -c -rlastpat $files`); + # HISTORY + # Extract or add this. Create it if not already there. + # $Log + # $EndLog <<-- stops HISTORY and COPYRIGHT lookup + ######################## + print "HISTORY processing not implemented yet.\n"; + print "(You have to use 'E' to get old 'V' processing).\n"; + next line; + } + if ($line =~ /^v$/) { + system $EDITOR, $file; + next line; + } + if ($line =~ /^r$/) { + system "rlog $files | $PAGER"; + next line; + } + if ($line =~ /^D$/) { + if ($revs == 0) { + print "Sorry. There is no revision for this file yet.\n"; + } else { + system "rcsdiff -c -rlastpat $files | $PAGER"; + } + next line; + } + if ($line =~ /^d$/) { + if ($revs == 0) { + print "Sorry. There is no revision for this file yet.\n"; + } + elsif ($revs == 1) { + system "rcsdiff -c -r$baserev $files | $PAGER"; + } else { + system "rcsdiff -c -r$revbranch $files | $PAGER"; + } + next line; + } + if ($line =~ /^N$/) { + print "Typing log message for $file.\n"; + next line; + } + if ($line =~ /^f$/) { + $mess = ''; + next line; + } + if ($line =~ /^a$/) { + $always++ if $mess || $prevmess; + next line; + } + if ($line =~ /^n$/) { + $mess = 'nope'; + last line; + } + if ($line =~ /^l$/) { + foreach $line (split(/\n/,$mess)) { + print $prompt,$line,"\n"; + } + next line; + } + if ($line =~ /^p$/) { + $mess .= $prevmess; + foreach $line (split(/\n/,$prevmess)) { + print $prompt,$line,"\n"; + } + next line; + } + if ($line =~ /^X$/) { + foreach $line (split(/\n/, &xtract_history($file))) { + $mess .= $prompt . $line . "\n"; + print $prompt,$line,"\n"; + } + next line; + } + if ($line =~ /^x$/) { + $prefix = $prefix ? '' : "patch$bnum: "; + next line; + } + $mess .= $prefix . $line; + $len = length($comment . $prefix . $line); + if ($len > 80) { + print "(Warning: last line longer than 80 chars)\n"; + } elsif ($len > 72) { # In case of vi with line numbers + print "(Warning: last line longer than 72 chars)\n"; + } + if (length($mess) > 511) { + print "You'll have to trim to less than 512 chars...\n"; + sleep(3); + $mess = &edit($mess); + } + } + $mess = $prevmess if $mess eq ''; + if (!$mess) { + print "No previous message, try again.\n"; + next try; + } + if (length($mess) > 511) { + print "Sorry, that's too long; RCS won't take it. Try again...\n"; + next try; + } + last try; + } + unless ($is_first) { + print LOGS $mess unless $mess eq 'nope'; + print MODS "$file\n"; + } + $prevmess = $mess unless $mess eq 'nope'; + $mess; # Returned value +} + +sub edit { + local($text) = join("\n", @_); + open(TMP,">/tmp/cil$$") || die "Can't create /tmp/cil$$"; + print TMP $text; + close TMP; + system $EDITOR, "/tmp/cil$$"; + $text = `cat /tmp/cil$$`; + unlink "/tmp/cil$$"; + $text; +} + +sub usage { + print STDERR <>patcil +$grep -v '^;#' ../pl/package.pl >>patcil +$grep -v '^;#' ../pl/rcsargs.pl >>patcil +$grep -v '^;#' ../pl/comment.pl >>patcil +$grep -v '^;#' ../pl/editor.pl >>patcil +$grep -v '^;#' ../pl/tilde.pl >>patcil +$grep -v '^;#' ../pl/profile.pl >>patcil +chmod +x patcil +$eunicefix patcil diff --git a/pat/patclean.SH b/pat/patclean.SH new file mode 100755 index 0000000..8c5f522 --- /dev/null +++ b/pat/patclean.SH @@ -0,0 +1,185 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patclean (with variable substitutions)" +cat >patclean <>patclean <<'!NO!SUBS!' + +$RCSEXT = ',v' unless $RCSEXT; + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("ahnmV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$RCSEXT = ',v' unless $RCSEXT; +$ENV{'DIST'} = '/dev/null'; # Disable ~/.dist_profile + +chop($pwd = `pwd`) unless -f '.package'; +until (-f '.package') { + die "$progname: no .package file! Run packinit.\n" unless $pwd; + chdir '..' || die "$progname: can't cd ..: $!\n"; + $pwd =~ s|(.*)/(.*)|$1|; + $prefix = $2 . '/' . $prefix; +} +if ($prefix) { + for (@ARGV) { + s/^/$prefix/ unless m|^[-/]|; + } +} + +# We now are at the top level + +&readpackage; + +if ($opt_n) { + &newer; # Look for files newer than patchlevel.h +} elsif ($opt_a) { + open(MANI,"MANIFEST.new") || die "$progname: can't read MANIFEST.new: $!\n"; + @ARGV = (); + while () { + s|^\./||; + next if m|^patchlevel.h|; # This file is built by hand + chop; + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MANI; +} elsif ($opt_m) { + open(MODS,"bugs/.mods$bnum") || die "$progname: no modification found.\n"; + @ARGV = (); + while () { + next if m|^patchlevel.h$|; # This file is built by hand + chop; + ($_) = split(' '); + push(@ARGV,$_); + } + close MODS; +} + +# Set a temporary file for check outs +$TMPFILE = "/tmp/cl$$.tmp"; + +# Now loop over each file specified, doing a 'rcsclean' +foreach $file (@ARGV) { + if (-f $file) { + $files = &rcsargs($file); + @files = split(' ', $files); + $rlog = `rlog -rlastpat- $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + if (!$revs) { + print "$progname: $file has never been checked in--checking in...\n"; + system 'perl', '-S', 'patcil', '-p', $file; + $revs = 2; # At least null trunk + new fresh revision + } + # Look whether there is a branch + if ($revs == 1) { + $rlog = `rlog -r$revbranch $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + $revs++; # add the base revision + } + # We must only give the name of the RCS revision file, i.e. $files[1] + if ($revs == 1) { + system "co -q -p$baserev $files[1] > $TMPFILE"; + } else { + system "co -q -p$revbranch $files[1] > $TMPFILE"; + } + if ($? == 0) { + system 'cmp', '-s', $file, $TMPFILE; + if ($? == 0) { + unlink $file; + print "$progname: $file removed.\n"; + } else { + # Check in file and make sure all was ok + system 'perl', '-S', 'patcil', '-p', $file; + system "co -q -p$revbranch $files[1] > $TMPFILE"; + if ($? == 0) { + system 'cmp', '-s', $file, $TMPFILE; + if ($? == 0) { + unlink $file; + print "$progname: $file removed.\n"; + } else { + print "$progname: $file NOT removed.\n"; + } + } else { + print "$progname: could not check out--$file NOT removed.\n"; + } + } + } else { + print "$progname: no revision--$file NOT removed.\n"; + } + } +} + +unlink "$TMPFILE"; + +sub usage { + print STDERR <>patclean +$grep -v '^;#' ../pl/package.pl >>patclean +$grep -v '^;#' ../pl/rcsargs.pl >>patclean +$grep -v '^;#' ../pl/tilde.pl >>patclean +$grep -v '^;#' ../pl/profile.pl >>patclean +chmod +x patclean +$eunicefix patclean diff --git a/pat/patcol.SH b/pat/patcol.SH new file mode 100755 index 0000000..15fcc6f --- /dev/null +++ b/pat/patcol.SH @@ -0,0 +1,235 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patcol (with variable substitutions)" +cat >patcol <>patcol <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("acd:f:hnmsCRS:V"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$RCSEXT = ',v' unless $RCSEXT; +$NEWMANI = 'MANIFEST.new' unless $NEWMANI = $opt_f; + +chop($pwd = `pwd`) unless -f '.package'; +until (-f '.package') { + die "$progname: no .package file! Run packinit.\n" unless $pwd; + chdir '..' || die "$progname: can't cd ..: $!"; + $pwd =~ s|(.*)/(.*)|$1|; + $prefix = $2 . '/' . $prefix; +} +if ($prefix) { + for (@ARGV) { + s/^/$prefix/ unless m|^[-/]|; + } +} + +# We now are at the top level + +&readpackage; +undef $opt_C unless -f $copyright; +©right'init($copyright) if $opt_C; +&makedir($opt_d) if $opt_d; + +undef $opt_c unless $opt_d; # Disable -c if not -d +undef $opt_R unless $opt_d; # Disable -R if not -d +push(@sw, '-q') if $opt_s; # Let RCS work quietly + +if ($opt_n) { + &newer; # Look for files newer than patchlevel.h +} elsif ($opt_a) { + open(MANI, $NEWMANI) || die "No $NEWMANI found.\n"; + @ARGV = (); + while () { + s|^\./||; + next if m|^patchlevel.h| && !$opt_d; # This file is built by hand + chop; + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MANI; +} elsif ($opt_m) { + open(MODS,"bugs/.mods$bnum") || die "$progname: no modification found.\n"; + @ARGV = (); + while () { + next if m|^patchlevel.h$|; # This file is built by hand + chop; + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MODS; +} elsif ($opt_S) { + &readsnapshot($opt_S); + foreach $file (sort keys %Snap) { + push(@ARGV, $file); + } +} + +# Now loop over each file specified, doing a 'co -l' +foreach $file (@ARGV) { + if ($opt_c && -f $file) { + ©_file($file, $opt_d); + next; + } + # Continue only if file does not exist or option -d was used. + if (! -f $file || $opt_d) { + $files = &rcsargs($file); + @files = split(' ', $files); + if ($opt_S && ($rev = $Snap{$file}) ne '') { # Use snapshot file + &col($rev); + next; + } + $rlog = `rlog -rlastpat- $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + if (!$revs) { + if ($opt_d) { + ©_file($file, $opt_d); + } else { + print STDERR "$progname: $file has never been checked in\n"; + } + } else { + # Look whether there is a branch + if ($revs == 1) { + $rlog = `rlog -r$revbranch $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + $revs++; # add the base revision (trunk) + } + if ($revs == 1) { + &col($baserev); + } else { + &col($revbranch); + } + } + + } +} + +# Run co -l on @files, unlock file if it fails and retry. +# If '-d' option was used, we check out in the specified +# directory, after having made all the necessary directories +# in the path name (which should be relative to the top). +sub col { + local($rev) = shift; # Revision to be checked out. + if (! $opt_d) { + if (system 'co', "-l$rev", @sw, @files) { + print "$progname: unlocking and trying again...\n" unless $opt_s; + system 'rcs', '-u', @sw, @files; + system 'co', "-l$rev", @sw, @files unless $?; + } + } else { + local($name) = $files[0]; # First element is file name + $_ = $name; + s|(.*)/.*|\1| && &makedir("$opt_d/$_"); + if ($opt_C) { + ©right'expand("co -p @sw -r$rev $files[1]", "$opt_d/$name"); + } else { + system "co -p -r$rev @sw $files[1] > $opt_d/$name"; + } + system 'perl', '-pi', '-e', 's|Lock[e]r:.*\$|\$|;', "$opt_d/$name" + if $opt_R; + # If RCS file has x bits set, add them on new file + -x $files[1] && chmod(0755, "$opt_d/$name"); + } +} + +# Copy file into directory, eventually performing copyright expansion... +sub copy_file { + local($file, $dir) = @_; + local($base) = $file =~ m|^(.*)/.*|; + &makedir("$dir/$base"); + if ($opt_C) { + ©right'expand("cat $file", "$dir/$file"); + } else { + system 'cp', "$file", "$dir/$file"; + } + system 'perl', '-pi', '-e', 's|Lock[e]r:.*\$|\$|;', "$dir/$file" if $opt_R; + -x $file && chmod(0755, "$dir/$file"); + print "$progname: $file has been copied\n" unless $opt_s; +} + +sub usage { + print STDERR <>patcol +$grep -v '^;#' ../pl/package.pl >>patcol +$grep -v '^;#' ../pl/rcsargs.pl >>patcol +$grep -v '^;#' ../pl/copyright.pl >>patcol +$grep -v '^;#' ../pl/makedir.pl >>patcol +$grep -v '^;#' ../pl/snapshot.pl >>patcol +$grep -v '^;#' ../pl/tilde.pl >>patcol +$grep -v '^;#' ../pl/profile.pl >>patcol +chmod +x patcol +$eunicefix patcol diff --git a/pat/patdiff.SH b/pat/patdiff.SH new file mode 100755 index 0000000..33ba90c --- /dev/null +++ b/pat/patdiff.SH @@ -0,0 +1,236 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patdiff (with variable substitutions)" +cat >patdiff < +# +# $Log: patdiff.SH,v $ +# Revision 3.0.1.2 1994/01/24 14:30:36 ram +# patch16: now prefix error messages with program's name +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.1 1993/08/19 06:42:35 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:43 ram +# Baseline for dist 3.0 netwide release. +# + +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +!GROK!THIS! +cat >>patdiff <<'!NO!SUBS!' + +$RCSEXT = ',v' unless $RCSEXT; +$TOPDIR = ''; # We are at top-level directory + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("ahnV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +&readpackage; +©right'init($copyright) if -f $copyright; + +system 'mkdir', 'bugs' unless -d 'bugs'; + +if (-f 'patchlevel.h') { + open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; + while () { + $bnum = $1 if /^#define\s+PATCHLEVEL\s+(\d+)/; + } + die "$progname: malformed patchlevel.h file.\n" if $bnum eq ''; + ++$bnum; +} else { + $bnum=1; +} + +if ($opt_a) { + open(MANI,"MANIFEST.new") || die "$progname: can't read MANIFEST.new: $!\n"; + @ARGV = (); + while () { + chop; + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MANI; +} + +foreach $file (@ARGV) { + next if ($file =~ /^patchlevel.h$/); # Skip patchlevel.h + if (! -f $file) { + print "$progname: $file not found.\n"; + next; + } + $files = &rcsargs($file); + @files = split(' ',$files); + $new=''; + $revs=0; + $rlog = `rlog -rlastpat- $files 2>&1`; + ($lastpat) = ($rlog =~ /lastpat: ([\d.]+)/); + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + if (!$revs) { + print "$progname: no cil has been done on $file.\n" ;; + } elsif ($revs == 1) { + ($base) = ($rlog =~ /.*\nrevision\s+(\S+)/); + ($a,$b,$c,$d) = split(/\./,$base); + if ($d ne '') { + if (!$opt_n) { + print + "$progname: no changes in $file since last patch. (Did you cil it?)\n"; + next; # Skip file with no changes + } else { + $new='foo'; + } + } else { + $revs=0; + $rlog = `rlog -r$revbranch- $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + if (!$revs) { + print + "$progname: no changes in $file since base version. (Did you cil it?)\n"; + next; # Skip file with no changes + } else { + ($new) = ($rlog =~ /\nrevision\s*(\d+\.\d+\.\d+\.\d+)/); + } + } + } else { + ($new) = ($rlog =~ /\nrevision\s*(\d+\.\d+\.\d+\.\d+)/); + } + if ($new ne '') { + ($fname = $file) =~ s|.*/||; + $fname = substr($fname, 0, 11); # For filsystems with short names + open(PATCH,">>bugs/$fname.$bnum") || die "Can't make patch"; + print PATCH "\nIndex: $file\n"; + open(CO,"co -p -rlastpat $files 2>/dev/null |"); + while () { + if (/\$Header/ || /\$Id/) { + print PATCH "Prereq: $lastpat\n"; + last; + } + } + close CO; + if (!$opt_n) { + if ($mydiff eq '') { + open(DIFF,"rcsdiff -c -rlastpat -r$new $files |") || + die "$progname: can't fork rcsdiff: $!\n"; + while () { + if ($. == 1) {s|\*\*\* \S+ |*** $file.old |;} + if ($. == 2) {s|--- \S+ |--- $file |;} + s|Lock[e]r:.*\$|\$|; # Use [e] to make it safe on itself + print PATCH; + } + close DIFF; + system 'rcs', "-Nlastpat:$new", @files; + } else { + ©right'expand("co -p -rlastpat $file", "/tmp/pdo$$"); + ©right'expand("co -p -r$new $file", "/tmp/pdn$$"); + open(DIFF, "$mydiff /tmp/pdo$$ /tmp/pdn$$ |") || + die "Can't run $mydiff"; + while () { # Contextual or unified diff + if ($. == 1) { + s|\*\*\* \S+ |*** $file.old | || + s|--- \S+ |--- $file.old |; + } + if ($. == 2) { + s|--- \S+ |--- $file | || + s|\+\+\+ \S+ |+++ $file |; + } + s|Lock[e]r:.*\$|\$|; # Remove locker mark + print PATCH; + } + close DIFF; + system 'rcs', "-Nlastpat:$new", @files; + unlink "/tmp/pdn$$", "/tmp/pdo$$"; + } + } else { + if ($mydiff eq '') { + open(DIFF,"rcsdiff -c -rlastpat $files |") || + die "Can't run rcsdiff"; + while () { + if ($. == 1) {s|\*\*\* \S+ |*** $file.old |;} + if ($. == 2) {s|--- \S+ |--- $file |;} + s|Lock[e]r:.*\$|\$|; # Remove locker mark + print PATCH; + } + close DIFF; + } else { + system "co -p -rlastpat $files >/tmp/pdo$$"; + system "cp $file /tmp/pdn$$"; + open(DIFF, "$mydiff /tmp/pdo$$ /tmp/pdn$$ |") || + die "$progname: can't fork $mydiff: $!\n"; + while () { + # Contextual or unified diff + if ($. == 1) { + s|\*\*\* \S+ |*** $file.old |; + s|--- \S+ |--- $file.old |; + } + if ($. == 2) { + s|--- \S+ |--- $file |; + s|\+\+\+ \S+ |+++ $file |; + } + s|Lock[e]r:.*\$|\$|; # Remove locker mark + print PATCH; + } + close DIFF; + unlink "/tmp/pdn$$", "/tmp/pdo$$"; + } + } + } +} + +sub usage { + print STDERR <>patdiff +$grep -v '^;#' ../pl/rcsargs.pl >>patdiff +$grep -v '^;#' ../pl/copyright.pl >>patdiff +$grep -v '^;#' ../pl/tilde.pl >>patdiff +$grep -v '^;#' ../pl/profile.pl >>patdiff +chmod +x patdiff +$eunicefix patdiff diff --git a/pat/patftp.SH b/pat/patftp.SH new file mode 100755 index 0000000..c35aad6 --- /dev/null +++ b/pat/patftp.SH @@ -0,0 +1,118 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patftp (with variable substitutions)" +cat >patftp < +# +# $Log: patftp.SH,v $ +# Revision 3.0.1.3 1994/01/24 14:30:43 ram +# patch16: now prefix error messages with program's name +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.2 1993/08/24 12:16:57 ram +# patch3: removed useless orgname variable +# +# Revision 3.0.1.1 1993/08/19 06:42:36 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:44 ram +# Baseline for dist 3.0 netwide release. +# + +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +!GROK!THIS! +cat >>patftp <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts("hV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$RCSEXT = ',v' unless $RCSEXT; +chdir '..' if -d '../bugs'; + +&readpackage; + +if ($#ARGV < 0) { + open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; + while () { + $argv = $1 if /^#define\s+PATCHLEVEL\s+(\d+)/; + } + close PL; + die "$progname: malformed patchlevel.h file.\n" if $argv eq ''; + @ARGV = $argv; +} else { + for (@ARGV) { + s/^patch//; + } + $argv = &rangeargs(@ARGV); + @ARGV = split(' ',$argv); +} + +if ($#ARGV < 0) { + print STDERR "$progname: no patches specified.\n"; + &usage; +} elsif ($#ARGV) { + print "$progname: copying $package $baserev patches $argv to $ftpdir...\n"; +} else { + print "$progname: copying $package $baserev patch $argv to $ftpdir...\n"; +} + +chdir 'bugs' || die "$progname: can't cd to bugs: $!\n"; + +until ($#ARGV < 0) { + $patnum = shift; + `cp patch$patnum $ftpdir`; +} + +sub usage { + print STDERR <>patftp +$grep -v '^;#' ../pl/rangeargs.pl >>patftp +$grep -v '^;#' ../pl/tilde.pl >>patftp +$grep -v '^;#' ../pl/profile.pl >>patftp +chmod +x patftp +$eunicefix patftp diff --git a/pat/patindex.SH b/pat/patindex.SH new file mode 100755 index 0000000..83e175b --- /dev/null +++ b/pat/patindex.SH @@ -0,0 +1,66 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patindex (with variable substitutions)" +$spitshell >patindex < +# +# $Log: patindex.SH,v $ +# Revision 3.0.1.1 1993/08/19 06:42:37 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:44 ram +# Baseline for dist 3.0 netwide release. +# + +zcat='$zcat' +test='$test' +sed='$sed' +grep='$grep' + +!GROK!THIS! +$spitshell >>patindex <<'!NO!SUBS!' +if test -d bugs; then + cd bugs +fi +for i in patch? patch??; do + if $test -f $i; then + echo "=== $i ===" + $grep '^Subject: ' $i | $sed 's/^patch\(.*\):Subject/\1/' + fi +done +for i in patch?.Z patch??.Z; do + if $test -f $i; then + name=`echo $i | $sed "s|\.Z$||"` + echo "=== $name ===" + $zcat $i | $grep '^Subject: ' | $sed 's/^patch\(.*\):Subject/\1/' + fi +done +!NO!SUBS! +chmod 755 patindex +$eunicefix patindex diff --git a/pat/patlog.SH b/pat/patlog.SH new file mode 100755 index 0000000..eb3fdfa --- /dev/null +++ b/pat/patlog.SH @@ -0,0 +1,390 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patlog (with variable substitutions)" +cat >patlog <>patlog <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts("hnruV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +&readpackage; + +if (-f 'patchlevel.h') { + open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; + while () { + if (/^#define\s+PATCHLEVEL\s+(\d+)/) { + $last = $1; + $patchline = $.; # Record PATCHLEVEL line + } + } + die "$progname: malformed patchlevel.h file.\n" if $last eq ''; + $bnum = $last + 1; +} +else { + $patchline = 1; + $bnum = 1; + $last = ''; +} + +chdir 'bugs' if -d 'bugs'; + +die "$progname: patch #$bnum already exists.\n" if -f "patch$bnum"; + +@patlist=<*.$bnum>; +die "$progname: no diff files for patch #$bnum.\n" if + $patlist[0] =~ /^\*/ || $patlist[0] eq ''; + +# Set up a proper editor, for later perusal +$editor = $ENV{'VISUAL'}; +$editor = $ENV{'EDITOR'} unless $editor; +$editor = $defeditor unless $editor; +$editor = 'vi' unless $editor; + +# The following used to be done in patmake. Only we do not really need to +# compute the subject lines for the generated patch here, we do it nonetheless +# to avoid code duplication in patmake. + +if (-s ".logs$bnum") { + $logs = ''; + open(LOGS,".logs$bnum"); + while () { + unless ($logseen{$_}) { + $logs .= $_; + $logseen{$_}++; + $logsnum++; # One more log + } + } + close LOGS; + $* = 1; + $subj = $logs; + $logs =~ s/^patch\d+:\s*/\t/g; + $logs =~ s/\n/\n\n/g; + $subj =~ s/^patch\d+:\s*/Subject: /g; + $* = 0; +} else { + $subj = "Subject: \n"; +} + +# Try to guess the priority of the patch +if (-s ".mods$bnum") { + open(MODS, ".mods$bnum"); + while () { + chop; + unless ($fileseen{$_}) { + $fileseen{$_}++; + $modsnum++; # One more modified file + } + } + close MODS; +} +$modsnum++ unless $modsnum; # Avoid divisions by zero +$mean = $logsnum / $modsnum; +if ($mean > 0.7 && $mean < 1.3) { + $priority = "MEDIUM"; +} elsif ($mean <= 0.7) { + $priority = "HIGH"; # Small changes +} else { + $priority = "LOW"; # Big changes +} + +# Save priority for patmake +open(PRIORITY, ">.pri$bnum") || die "$progname: can't create .pri$bnum: $!\n"; +print PRIORITY $priority, "\n"; +close PRIORITY; + +# Save subject lines for patmake +open(SUBJECTS, ">.subj$bnum") || die "$progname: can't create .subj$bnum: $!\n"; +print SUBJECTS $subj; +close SUBJECTS; + +# +# Generate description file, then edit it so that the user may fixup things. +# + +unless (($opt_r && -f ".clog$bnum") || ($opt_u && &uptodate(".clog$bnum"))) { + open(CHANGES, ">.clog$bnum") || + die "$progname: can't create .clog$bnum: $!\n"; + print CHANGES <.rlog$bnum") || + die "$progname: can't create .rlog$bnum: $!\n"; + print RCS <.xlog$bnum") || die "$progname: can't create .xlog$bnum: $!\n"; + print LOG <\n\n"; + print LOG ". Description:\n\n"; + &addlog(".clog$bnum"); + if ($changercs) { + print LOG ". Files changed:\n\n"; + &addlog(".rlog$bnum"); + } + close LOG; +} +system $editor, ".xlog$bnum"; +exit(0) if $opt_n; + +# +# Changelog file update, checking in and diff computation. +# + +print "$progname: updating $changelog...\n"; + +chdir('..') || die "$progname: can't go back to ..: $!\n"; +if (-f $changelog) { + rename($changelog, "$changelog.bak") || + die "$progname: can't rename $changelog into $changelog.bak: $!\n"; +} + +open(LOG, ">$changelog") || die "$progname: can't create $changelog: $!\n"; +&addlog("bugs/.xlog$bnum"); +if (-f "$changelog.bak") { + open(OLOG, "$changelog.bak") || + die "$progname: can't open $changelog.bak: $!\n"; + print LOG while ; + close OLOG; +} +close LOG; + +print "$progname: checking in $changelog and computing diff...\n"; + +# It is safe to run a patcil and a patdiff now, since the Changelog file has +# been updated anyway: any log done while checking that file in will not +# appear in the patch log nor the Changelog. + +system 'perl', '-S', 'patcil', '-p', $changelog; +system 'perl', '-S', 'patdiff', $changelog; + +exit 0; # All done. + +# Returns true if .clog and .rlog (it it exists) are newer than .xlog. +sub newertmp { + return 1 unless -f ".xlog$bnum"; # To force regeneration + return 1 if &newer(".clog$bnum", ".xlog$bnum") || + (!$changercs || &newer(".rlog$bnum", ".xlog$bnum")); + 0; +} + +# Returns true if $file is newer than the reference file $ref. +sub newer { + local($file, $ref) = @_; + (stat($file))[9] >= (stat($ref))[9]; +} + +# Retursn true if $file is up-to-date with respect to .logs and .mods. +sub uptodate { + local($file) = @_; + return 0 unless -f $file; # Cannot be up-to-date if missing + &newer($file, ".logs$bnum") && &newer($file, ".mods$bnum"); +} + +# Add file to the LOG descriptor, skipping the first three lines of that file. +sub addlog { + local($file) = @_; + open(FILE, $file) || die "$progname: can't reopen $file: $!\n"; + $_ = ; $_ = ; $_ = ; + print LOG while ; + close FILE; +} + +# Build RCS logs, for each file listed in the %fileseen array, into %rcslog. +# Common RCS log messages are grouped under the same entry. +sub buildlogs { + local($log); + local(@files); + local($first); + local(%invertedlog); + foreach $file (keys %fileseen) { + $log = &rcslog($file); + next if $log eq ''; + $invertedlog{$log} .= "$file "; + } + foreach $log (keys %invertedlog) { + @files = split(' ', $invertedlog{$log}); + $first = (sort @files)[0]; + $rcslog{$first} = join(', ', @files) . ': ' . $log; + } +} + +# Grab log for a given file by parsing its $Log section. Only comments +# relevant to the patch are kept. This relies on the presence of the patchxx: +# leading string in front of each comment. +# If not sufficient (because people don't use patchxx prefixes), then we'll +# need a more sophisticated algorithm parsing revisions lines to see where we +# left of at the last patch. +sub rcslog { + local($file) = @_; + open(FILE, "../$file") || warn "$me: can't open $file: $!\n"; + local($_); + local($comment, $len); + local($pcomment) = "patch$bnum:"; + local($plen) = length($pcomment); + local($c); + local($lastnl) = 1; + local($kept); # Relevant part of the RCS comment which is kept + file: while () { + if (/^(.*)\$Log[:\$]/) { + $comment = $1; + $comment =~ s/\s+$//; # Newer RCS chop spaces on emtpy lines + $len = length($comment); + while () { + $c = substr($_, 0, $len); + last file unless $c eq $comment; + $_ = substr($_, $len, 9_999); + if ($lastnl) { + last file unless /^\s*Revision\s+\d/; + $lastnl = 0; + } elsif (/^\s*$/) { + $lastnl = 1; + } else { + s/^\s*//; # Older RCS will have space here + $c = substr($_, 0, $plen); + last file unless $c eq $pcomment; + # Comment for that patch is kept after space cleanup + $_ = substr($_, $plen, 9_999); + s/^\s*//; + s/\s*$//; + $_ .= '.' unless /\.$/; + s/^(.)/\U$1/; # Ensure upper-cased to start sentence + s/^/ / if $kept; + $kept .= $_; # Will be reformatted later on + } + } + } + } + close FILE; + $kept; +} + +# Format line to fit in 80 columns (70 + 8 for the added leading tabs). +# Rudimentary parsing to break lines after a , or a space. +sub format { + local($_) = @_; + local($tmp); + local($msg); + while (length($_) > 70) { + $tmp = substr($_, 0, 70); + $tmp =~ s/^(.*)([,\s]).*/$1/; + $msg .= "\t$tmp" . ($2 eq ',' ? ',' : '') . "\n"; + $_ = substr($_, length($tmp), 9_999); + $_ =~ s/^\s+//; + } + $msg .= "\t$_\n"; + $msg; +} + +sub usage { + print STDERR <>patlog +$grep -v '^;#' ../pl/tilde.pl >>patlog +$grep -v '^;#' ../pl/profile.pl >>patlog +chmod +x patlog +$eunicefix patlog diff --git a/pat/patmake.SH b/pat/patmake.SH new file mode 100755 index 0000000..0ff82fd --- /dev/null +++ b/pat/patmake.SH @@ -0,0 +1,413 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patmake (with variable substitutions)" +cat >patmake < +# Contribution by: Graham Stoney +# +# $Log: patmake.SH,v $ +# Revision 3.0.1.5 1995/09/25 09:21:19 ram +# patch59: now calls patsend with -i to add more instructions +# +# Revision 3.0.1.4 1994/10/29 16:43:09 ram +# patch36: a lot of setup is now performed by patlog +# patch36: added various escapes in strings for perl5 support +# +# Revision 3.0.1.3 1994/01/24 14:30:55 ram +# patch16: now prefix error messages with program's name +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.2 1993/08/24 12:18:59 ram +# patch3: now asks for patch mailing/posting after all patches edited +# patch3: patch release notification is done via new patnotify +# patch3: random cleanup, removed old RCS logs +# +# Revision 3.0.1.1 1993/08/19 06:42:38 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:45 ram +# Baseline for dist 3.0 netwide release. +# + +\$defeditor='$defeditor'; +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +\$mailer = '$mailer'; +!GROK!THIS! +cat >>patmake <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts("hV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +&readpackage; +&readusers; + +$FILEOVERHEAD = 40; # Name of files, Index, Prereq +$MAXPATSIZE = 50000; # Maximum allowed size for a patch +$PATOVERHEAD = 2500; # Litterature +$FIRST_PAT = 3000; # Give space for first patch (descriptions) + +if (-f 'patchlevel.h') { + open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; + while () { + if (/^#define\s+PATCHLEVEL\s+(\d+)/) { + $last = $1; + $patchline = $.; # Record PATCHLEVEL line + } + } + die "$progname: malformed patchlevel.h file.\n" if $last eq ''; + $bnum = $last + 1; +} +else { + $patchline = 1; + $bnum = 1; + $last = ''; +} + +@ARGV = <[Mm]akefile*>; +$mf = ''; +if ($#ARGV > 0) { + while (<>) { + $mf .= $_ if /^[a-z.]+\s*:/; # Rules in makefile + } +} +$* = 1; +$after = ''; +$after .= "\t\tConfigure -ders\n" if -f 'Configure'; +$after .= "\t\tmake depend\n" if $mf =~ /^depend:/; +$after .= "\t\tmake\n" if $mf; +$after .= "\t\tmake test\n" if $mf =~ /^test:/; +$after .= "\t\tmake install\n" if $mf =~ /^install:/; +$after .= "\t\tmake install.man\n" if $mf =~ /^install\.man:/; +$* = 0; + +chdir 'bugs' if -d 'bugs'; +die "$progname: patch #$bnum already exists.\n" if -f "patch$bnum"; + +@patlist=<*.$bnum>; +die "$progname: no diff files for patch #$bnum.\n" if + $patlist[0] =~ /^\*/ || $patlist[0] eq ''; + +# Whether they asked for a changelog file or not, call patlog. +# This will create at least the .pri and .subj and .clog files that we need. +# If a changelog file is needed, it will update it and create the necessary +# patch before we go on and put all those patches together. +# Note that we make use of the '-r' option, in case they have already +# run patlog themselves and made the necessary adjustments. Since -r supersedes +# -u, it's safe to allow ~/.dist_profile processing anyway. + +chdir '..' if -d '../bugs'; +system 'perl', '-S', 'patlog', '-r'; # Must be called from top-level dir +chdir 'bugs' if -d 'bugs'; + +@patlist=<*.$bnum>; # Reget it, in case Changes.xx appeared due to patlog + +# Look for size of each diff file +for (@patlist) { + ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime, + $blksize,$blocks) = stat($_); + $size{$_} = $size; +} + +# Sort the array, biggest sizes first +sub revnum { $size{$a} < $size{$b} ? 1 : $size{$a} > $size{$b} ? -1 : 0; } +@patlist = sort revnum @patlist; + +# Put files in a patch +for (@patlist) { + $i=1; + # Find the patch in which the current file can go + # Divide size by 15 to count the 3 spaces added in front of each line + while (($newtot = int($tot[$i] + $size{$_} + $size{$_}/15 + $FILEOVERHEAD)) > + $MAXPATSIZE-$PATOVERHEAD-($i == 1 ? $FIRST_PAT : 0) && $tot[$i]) { + $i++; + } + # Adding $_ to patch $i giving $newtot bytes + $tot[$i] = $newtot; # Update size of kit $i + $list[$i] .= " $_"; # Add file to the kit $i +} + +$numpat = $#list; # Number of patches to generate + +if ($numpat > 1) { + print "$progname: Warning: generating $numpat patches.\n"; + sleep(1); +} + +$hah = " (hah!)" if $bnum == 1; +$patbase = $bnum; # First patch generated + +open(PRIORITY, ".pri$bnum"); +chop($priority = ); +close PRIORITY; +$priority = 'LOW' unless $priority; + +for ($i = 1; $i <= $numpat; $i++) { # For all patches... + open(PATCH,">patch$bnum") || die "Can't create patch #$bnum"; + chop($date=`date`); + print PATCH +"System: $package version $baserev +Patch #: $bnum +"; + print PATCH "Priority: $priority\n" unless $priority eq ''; + # Print subjects only for first patch + if ($i == 1) { + open(SUBJECTS, ".subj$bnum"); + print PATCH while ; + close SUBJECTS; + } else { + print PATCH "Subject: patch #$patbase, continued\n"; + } + print PATCH +"Date: $date +From: $maintname <$maintloc> + +Description: +"; + # Print description and repeat-by only for first patch + if ($i == 1) { + open(LOGS, ".clog$bnum"); + $_ = ; $_ = ; $_ = ; # Skip first three lines + print PATCH while ; + close LOGS; + print PATCH "Repeat-By: \n"; + } else { + print PATCH "\tSee patch #$patbase.\n\n"; + } + print PATCH +" +Fix: From rn, say \"| patch -p -N -d DIR\", where DIR is your $package source + directory. Outside of rn, say \"cd DIR; patch -p -N + +"; + if ($mailagent ne 'false') { + print PATCH +" If you send a mail message of the following form it will greatly speed + processing: + + Subject: Command + \@SH mailpatch PATH $package $baserev LIST + ^ note the c + + where PATH is a return path FROM ME TO YOU either in Internet notation, + or in bang notation from some well-known host, and LIST is the number + of one or more patches you need, separated by spaces, commas, and/or + hyphens. Saying 35- says everything from 35 to the end. + + To get some more detailed instructions, send me the following mail: + + Subject: Command + \@SH mailhelp PATH + +"; + } + if ($ftpsite) { + print PATCH +" You can also get the patches via anonymous FTP from + $ftpsite. +"; + } + # Print patchlevel at the top of each patch + print PATCH " +Index: patchlevel.h +"; + if ($last eq '') { + `echo "#define PATCHLEVEL 1" >patchlevel.h`; + `cp /dev/null patchlevel.h.null`; + print PATCH `diff -c patchlevel.h.null patchlevel.h`; + unlink 'patchlevel.h', 'patchlevel.h.null'; + } + else { + print PATCH +"Prereq: $last +${patchline}c${patchline} +< #define PATCHLEVEL $last +--- +> #define PATCHLEVEL $bnum +"; + } + $last = $bnum; # Update last patch + push(@patset, $bnum); # Record set of generated patch(es) + + @ARGV = split(' ', $list[$i]); + while (<>) { print PATCH; } + print PATCH "\n*** End of Patch $bnum ***\n"; + close PATCH; + + # Update patchlevel.h file + $editor = $ENV{'VISUAL'}; + $editor = $ENV{'EDITOR'} unless $editor; + $editor = $defeditor unless $editor; + $editor = 'vi' unless $editor; + system $editor, "patch$bnum"; + if (-s "patch$bnum") { + system 'chmod', '-w', "patch$bnum"; # Protect newly created patch + chdir '..'; + `echo "#define PATCHLEVEL 0" >patchlevel.h` unless -f 'patchlevel.h'; + open(PL,"patchlevel.h") || + die "$progname: can't open patchlevel.h: $!\n"; + open(PLN,">patchlevel.h+") || + die "$progname: can't create new patchlevel.h: $!\n"; + while () { + if (/^#define\s+PATCHLEVEL\s+(\d+)/) { + $bnum = $1; + $bnum++; # Update patch level + print PLN "#define PATCHLEVEL $bnum\n"; + } else { + print PLN; # Simply copy other lines + } + } + close PLN; + close PL; + `mv -f patchlevel.h+ patchlevel.h`; + die "$progname: malformed patchlevel.h file.\n" if $bnum eq ''; + } else { + unlink "patch$bnum"; + die "$progname: aborted.\n"; + } + + chdir 'bugs' || die "$progname: cannot cd to bugs: $!\n"; + + # Find priority for next patch in loop + $priority=''; + open(PATCH, "patch$bnum") || die "Cannot re-open patch #$bnum !\n"; + while () { + /^Priority:\s*(\S+)\s*$/ && ($priority = $1); + } + close PATCH; + + $bnum++; # For next patch in loop +} + +utime time, time, 'patchlevel.h'; # Reset timestamp on patchlevel + +if (@patset == 1) { + $bnum = pop(@patset); + $patch = "patch #$bnum"; +} else { + $bmin = shift(@patset); + $bmax = pop(@patset); + $bnum = "$bmin-$bmax"; + $patch = "patches #$bmin thru #$bmax"; +} + +# Post generated patches +if ($newsgroups) { + print "\nDo you wish to post $patch to $newsgroups? [y] "; + $ans = ; + system 'patpost', $bnum unless $ans =~ /^n/i; +} + +# Mail generated patches +if ($recipients) { + print "\n"; + if (0 == ($recipients =~ tr/ //)) { + print "Do you wish to send $patch to $recipients? [y] "; + } else { + print "The following people are on the recipient list:\n\n"; + foreach $addr (split(' ', $recipients)) { + print "\t$addr\n"; + } + print "\nDo you wish to send $patch to them? [y] "; + } + $ans = ; + system 'patsend', '-i', $bnum, $recipients unless $ans =~ /^n/i; +} + +# Copy patches to FTP directory +if ($ftpdir) { + print "\nDo you wish to copy $patch to $ftpdir? [y] "; + $ans = ; + system 'patftp', $bnum unless $ans =~ /^n/i; +} + +# Notify people about it. +if ($notify) { + print "\n"; + if (0 == ($notify =~ tr/ //)) { + print "Do you wish to notify $notify? [y] "; + } else { + print "The following people are on the notify list:\n\n"; + foreach $addr (split(' ', $notify)) { + print "\t$addr\n"; + } + print "\nDo you wish to notify them? [y] "; + } + $ans = ; + system 'patnotify', $notify unless $ans =~ /^n/i; +} + +sub usage { + print STDERR <>patmake +$grep -v '^;#' ../pl/users.pl >>patmake +$grep -v '^;#' ../pl/tilde.pl >>patmake +$grep -v '^;#' ../pl/profile.pl >>patmake +chmod +x patmake +$eunicefix patmake diff --git a/pat/patname.SH b/pat/patname.SH new file mode 100755 index 0000000..9397329 --- /dev/null +++ b/pat/patname.SH @@ -0,0 +1,175 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patname (with variable substitutions)" +cat >patname <>patname <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage() unless &Getopts("ahnmv:V"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$RCSEXT = ',v' unless $RCSEXT; +$ENV{'DIST'} = '/dev/null'; # Disable ~/.dist_profile + +chop($pwd = `pwd`) unless -f '.package'; +until (-f '.package') { + die "$progname: no .package file! Run packinit.\n" unless $pwd; + chdir '..' || die "$progname: can't cd ..: $!\n"; + $pwd =~ s|(.*)/(.*)|$1|; + $prefix = $2 . '/' . $prefix; +} +if ($prefix) { + for (@ARGV) { + s/^/$prefix/ unless m|^[-/]|; + } +} + +# We now are at the top level + +&readpackage; + +unless ($opt_v) { + print STDERR "$progname: version number must be specified using -v.\n"; + &usage; +} + +if ($opt_n) { + &newer; # Look for files newer than patchlevel.h +} elsif ($opt_a) { + open(MANI,"MANIFEST.new") || die "$progname: can't read MANIFEST.new: $!\n"; + @ARGV = (); + while () { + s|^\./||; + next if m|^patchlevel.h|; # This file is built by hand + chop; + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MANI; +} elsif ($opt_m) { + open(MODS,"bugs/.mods$bnum") || die "$progname: no modification found.\n"; + @ARGV = (); + while () { + next if m|^patchlevel.h$|; # This file is built by hand + chop; + ($_) = split(' '); + push(@ARGV,$_); + } + close MODS; +} + +# Now loop over each file specified, doing a 'rcsfreeze' +foreach $file (@ARGV) { + $files = &rcsargs($file); + @files = split(' ', $files); + $rlog = `rlog -rlastpat- $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + if (!$revs) { + print "$progname: $file has never been checked in--checking in...\n"; + system 'perl', '-S', 'patcil', '-p', $file; + $revs = 2; # At least null trunk + new fresh revision + } + # Look whether there is a branch + if ($revs == 1) { + $rlog = `rlog -r$revbranch $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + $revs++; # add the base revision + } + # If working file exists, make sure latest version was checked in + if (-f $file) { + if ($revs == 1) { + $delta = `rcsdiff -r$baserev $files 2>/dev/null`; + } else { + $delta = `rcsdiff -r$revbranch $files 2>/dev/null`; + } + if ($delta ne '') { + # File changed; check it in. + system 'perl', '-S', 'patcil', '-p', $file; + if ($revs > 1) { + # Have to re-run rlog after a new ci + $rlog = `rlog -r$revbranch $files 2>&1`; + } + } + } + # Now assign symbolic revision number + if ($revs == 1) { + system 'rcs', "-N$opt_v:$baserev", @files; + } else { + ($lastrev) = ($rlog =~ /revision $revbranch\.(\d+)/); + system 'rcs', "-N$opt_v:$revbranch.$lastrev", @files; + } +} + +sub usage { + print STDERR <>patname +$grep -v '^;#' ../pl/package.pl >>patname +$grep -v '^;#' ../pl/rcsargs.pl >>patname +$grep -v '^;#' ../pl/tilde.pl >>patname +$grep -v '^;#' ../pl/profile.pl >>patname +chmod +x patname +$eunicefix patname diff --git a/pat/patnotify.SH b/pat/patnotify.SH new file mode 100755 index 0000000..1ee93f6 --- /dev/null +++ b/pat/patnotify.SH @@ -0,0 +1,232 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patnotify (with variable substitutions)" +cat >patnotify <>patnotify <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts("hquV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +chdir '..' if -d '../bugs'; + +&readpackage; +&readusers if $opt_u; + +$dest = join(' ', @ARGV); +$dest .= " $notify" if $opt_u; + +&usage unless $dest; + +# Offer to edit the address list unless -q +unless ($opt_q) { + select((select(STDOUT), $| = 1)[0]); + print "Do you wish to edit the address list? [y] "; + $ans = ; + unless ($ans =~ /^n/i) { + @to = split(' ', $dest); + &listedit(*to); + $dest = join(' ', @to); + } +} + +if (-f 'patchlevel.h') { + open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; + while () { + if (/^#define\s+PATCHLEVEL\s+(\d+)/) { + $last = $1; + } + } + die "$progname: malformed patchlevel.h file.\n" if $last eq ''; +} else { + die "$progname: no patchlevel.h.\n"; +} + +@patches = &patseq($last); # Compute patches sequence +$lastpat = pop(@patches); + +warn "$progname: missing last .logs and .mods files\n" if $lastpat eq ''; + +$missing = $last - $lastpat + 1; +$these = $missing == 1 ? 'this' : 'these'; +$patches = $missing == 1 ? 'patch' : 'patches'; +$through = $missing == 1 ? $lastpat : "$lastpat thru " . ($lastpat+$missing-1); +$have = $missing == 1 ? 'has' : 'have'; +$patlist = "$lastpat-"; # They'll get everything up to the end + +($Patches = $patches) =~ s/^p/P/; +$opt = ($mailer =~ /sendmail/) ? '-odq' : ''; + +chdir 'bugs' || die "$progname: can't cd to bugs: $!\n"; + +# Find out priority of last patch set +$priority = 'UNKNOWN'; +open(PATCH, "patch$lastpat") || + die "$progname: can't open patch #$lastpat: $!\n"; +while () { + /^Priority:\s*(\S+)\s*$/ && ($priority = $1); +} +close PATCH; + +# Look for the .clog description and prepare the patch description +# for inclusion in the notification, so that they can figure out whether +# they really need that patch set. + +if (-f ".clog$lastpat") { + open(LOGS, ".clog$lastpat") || + die "$progname: can't open .clog$lastpat: $!\n"; + $_ = . . ; # Skip first three lines + $clog = ''; + while () { + $clog .= $_; + } + close LOGS; +} else { + warn "$progname: missing last .clog file in bugs directory\n"; +} + +print "$progname: sending notification of $missing new $patches to $dest...\n"; + +fork && exit; + +# I hate broken mailers! Bust it up into smaller groups of people... +@dest = split(' ', $dest); +while (@smalldest = splice(@dest, 0, 50)) { + $to = join(', ', @smalldest); # Sensible To: for sendmail + $smalldest = join(' ', @smalldest); + + open(MAILER, "|$mailer $opt $smalldest") || + die "$progname: can't fork $mailer: $!\n"; + print MAILER +"To: $to +Subject: $Patches $through for $package version $baserev $have been released. +Precedence: bulk +X-Mailer: dist [version $version PL$patchlevel] + +This is just a quick note to let you know that $package version $baserev +has been recently upgraded and that $patches $through $have been released. + +If you are actively using $package, I strongly suggest you upgrade by +applying $these $patches, whose priority is $priority. + +You can fetch $these $patches automatically by sending me the following mail: + + Subject: Command + \@SH mailpatch - $package $baserev $patlist + ^ note the c + +And if you wish to have future patches mailed directly to you, you can add: + + \@SH package - $package $baserev - mailpatches + +If you are not interested in receiving any information about future patches, +please send me the following mail: + + Subject: Command + \@SH package - $package $baserev +"; + print MAILER +" +Following is the $patches description: + +$clog" if $clog; + print MAILER +" +-- $progname speaking for $maintname <$maintloc>. +"; + close MAILER; +} + +sub usage { + print STDERR <>patnotify +$grep -v '^;#' ../pl/users.pl >>patnotify +$grep -v '^;#' ../pl/patseq.pl >>patnotify +$grep -v '^;#' ../pl/editor.pl >>patnotify +$grep -v '^;#' ../pl/listedit.pl >>patnotify +$grep -v '^;#' ../pl/tilde.pl >>patnotify +$grep -v '^;#' ../pl/profile.pl >>patnotify +chmod +x patnotify +$eunicefix patnotify diff --git a/pat/patpost.SH b/pat/patpost.SH new file mode 100755 index 0000000..7a8ec54 --- /dev/null +++ b/pat/patpost.SH @@ -0,0 +1,179 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patpost (with variable substitutions)" +cat >patpost < +# +# $Log: patpost.SH,v $ +# Revision 3.0.1.4 1995/05/12 12:25:58 ram +# patch54: added explicit From: header line pointing to the maintainer +# +# Revision 3.0.1.3 1994/01/24 14:32:09 ram +# patch16: now prefix error messages with program's name +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.2 1993/08/24 12:19:48 ram +# patch3: added ~name expansion for orgname +# patch3: random cleanup +# +# Revision 3.0.1.1 1993/08/19 06:42:41 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:47 ram +# Baseline for dist 3.0 netwide release. +# + +\$inews='${inews-/usr/lib/news/inews}'; +\$orgname='$orgname'; +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +!GROK!THIS! + +cat >>patpost <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("hrV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +$RCSEXT = ',v' unless $RCSEXT; +if ($inews eq 'inews') { + $inews = '/usr/lib/news/inews' if -f '/usr/lib/news/inews'; +} + +chdir '..' if -d '../bugs'; + +&readpackage; + +$orgname = &tilda_expand($orgname); +chop($orgname = `cat $orgname`) if $orgname =~ m|^/|; + +if ($opt_r) { + $repost = ' (REPOST)'; +} + +while ($_ = shift) { + if (/^(patch)?[1-9][\d\-]*$/) { + s/^patch//; + push(@argv,$_); + } else { + push(@newsgroups,$_); + } +} +$newsgroups = join(',',@newsgroups) unless $#newsgroups < 0; +&usage unless $newsgroups; + +@ARGV = @argv; +open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; +while () { + $maxnum = $1 if /^#define\s+PATCHLEVEL\s+(\d+)/; +} +close PL; +die "$progname: malformed patchlevel.h file.\n" if $maxnum eq ''; + +if ($#ARGV < 0) { + @patseq = &patseq($maxnum); + $lastpat = pop(@patseq); + $argv = &rangeargs("$lastpat-$maxnum"); +} +else { + $argv = &rangeargs(@ARGV); +} + +@ARGV = split(' ',$argv); +$argv =~ s/ $//; + +if ($#ARGV < 0) { + print STDERR "$progname: no patches specified.\n"; + &usage; +} elsif ($#ARGV) { + print + "$progname: posting $package $baserev patches $argv to $newsgroups...\n"; +} else { + print + "$progname: posting $package $baserev patch $argv to $newsgroups...\n"; +} + +chdir 'bugs' || die "$progname: can't cd to bugs: $!\n"; + +fork && exit; + +until ($#ARGV < 0) { + $patnum = shift; + open(PATCH,"patch$patnum") || + die "$progname: can't open patch$patnum: $!\n"; + open(XHEAD,"|$inews -h") || die "$progname: can't fork $inews: $!\n"; + print XHEAD +"From: $maintloc ($maintname) +Newsgroups: $newsgroups +Subject: $package $baserev patch #$patnum$repost +Summary: This is an official patch for $package $baserev. Please apply it. +Expires: +References: +Sender: +Distribution: +Organization: $orgname +Keywords: + +"; + while () { + print XHEAD; + } + close PATCH; + close XHEAD; + die "$progname: could not post patch$patnum.\n" if $?; +} + +sub usage { + print STDERR <>patpost +$grep -v '^;#' ../pl/rangeargs.pl >>patpost +$grep -v '^;#' ../pl/patseq.pl >>patpost +$grep -v '^;#' ../pl/tilde.pl >>patpost +$grep -v '^;#' ../pl/profile.pl >>patpost +chmod +x patpost +$eunicefix patpost diff --git a/pat/patsend.SH b/pat/patsend.SH new file mode 100755 index 0000000..61797be --- /dev/null +++ b/pat/patsend.SH @@ -0,0 +1,218 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patsend (with variable substitutions)" +cat >patsend < +# +# $Log: patsend.SH,v $ +# Revision 3.0.1.6 1995/09/25 09:22:02 ram +# patch59: new -i option to add more instructions for end-users +# +# Revision 3.0.1.5 1994/01/24 14:32:46 ram +# patch16: now prefix error messages with program's name +# patch16: don't feed mailer with more than 50 addresses at a time +# patch16: added ~/.dist_profile awareness +# +# Revision 3.0.1.4 1993/08/25 14:08:01 ram +# patch6: now asks for recipient list edition by default +# patch6: new -q option to suppress that +# +# Revision 3.0.1.3 1993/08/24 12:21:59 ram +# patch3: new -u option +# patch3: added Precedence and X-Mailer headers in mail message +# patch3: added ~name expansion for orgname +# +# Revision 3.0.1.2 1993/08/19 07:10:19 ram +# patch3: was not correctly writing the To: header field +# +# Revision 3.0.1.1 1993/08/19 06:42:42 ram +# patch1: leading config.sh searching was not aborting properly +# +# Revision 3.0 1993/08/18 12:10:49 ram +# Baseline for dist 3.0 netwide release. +# + +\$orgname='$orgname'; +\$mailer='$mailer'; +\$version = '$VERSION'; +\$patchlevel = '$PATCHLEVEL'; +!GROK!THIS! +cat >>patsend <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless &Getopts("hiquV"); + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +chdir '..' if -d '../bugs'; + +&readpackage; +&readusers if $opt_u; + +$orgname = &tilda_expand($orgname); +chop($orgname = `cat $orgname`) if $orgname =~ m|^/|; + +while ($_ = shift) { + if (/^(patch)?[1-9][\d,-]*$/) { + s/^patch//; + push(@argv,$_); + } else { + push(@dest,$_); + } +} +$dest = join(' ',@dest); +$dest .= " $recipients" if $opt_u; +&usage unless $dest; + +# Offer to edit the address list unless -q +unless ($opt_q) { + select((select(STDOUT), $| = 1)[0]); + print "Do you wish to edit the address list? [y] "; + $ans = ; + unless ($ans =~ /^n/i) { + @to = split(' ', $dest); + &listedit(*to); + $dest = join(' ', @to); + } +} + +$to = join(', ', split(' ', $dest)); +@ARGV = @argv; + +open(PL,"patchlevel.h") || die "$progname: can't open patchlevel.h: $!\n"; +while () { + $maxnum = $1 if /^#define\s+PATCHLEVEL\s+(\d+)/; +} +close PL; +die "$progname: malformed patchlevel.h file.\n" if $maxnum eq ''; + +if ($#ARGV < 0) { + @patseq = &patseq($maxnum); + $lastpat = pop(@patseq); + $argv = &rangeargs("$lastpat-$maxnum"); +} else { + $argv = &rangeargs(@ARGV); +} + +@ARGV = split(' ',$argv); +$argv =~ s/ $//; + +if ($#ARGV < 0) { + print STDERR "$progname: no patches specified.\n"; + &usage; +} elsif ($#ARGV) { + print "$progname: sending $package $baserev patches $argv to $dest...\n"; +} else { + print "$progname: sending $package $baserev patch $argv to $dest...\n"; +} + +chdir 'bugs' || die "$progname: can't cd to bugs: $!\n"; + +fork && exit; + +$opt = '-odq' if $mailer =~ /sendmail/; + +until ($#ARGV < 0) { + $patnum = shift; + + # I hate broken mailers! Bust it up into smaller groups of people... + @dest = split(' ', $dest); + while (@smalldest = splice(@dest, 0, 50)) { + $to = join(', ', @smalldest); # Sensible To: for sendmail + $smalldest = join(' ', @smalldest); + + open(MAILER, "|$mailer $opt $smalldest") || + die "$progname: can't fork $mailer: $!\n"; + print MAILER +"To: $to +Subject: $package $baserev patch #$patnum +Precedence: bulk +X-Mailer: dist [version $version PL$patchlevel] +Organization: $orgname + +"; + print MAILER +"$package version $baserev has been recently upgraded with the following patch, +which is being mailed directly to you as you requested when running Configure. + +If you are not interested in having future patches mailed directly to you, +please send me the following mail: + + Subject: Command + \@SH package - $package $baserev + +-- $progname speaking for $maintname <$maintloc>. + +" if ($opt_i || $opt_u); + print MAILER +"[The latest patch for $package version $baserev is #$maxnum.] + +"; + open(PATCH,"patch$patnum") || + die "$progname: can't open patch$patnum: $!\n"; + while () { + print MAILER; + } + close PATCH; + close MAILER; + die "$progname: could not mail patch$patnum.\n" if $?; + } +} + +sub usage { + print STDERR <>patsend +$grep -v '^;#' ../pl/rangeargs.pl >>patsend +$grep -v '^;#' ../pl/users.pl >>patsend +$grep -v '^;#' ../pl/patseq.pl >>patsend +$grep -v '^;#' ../pl/tilde.pl >>patsend +$grep -v '^;#' ../pl/editor.pl >>patsend +$grep -v '^;#' ../pl/listedit.pl >>patsend +$grep -v '^;#' ../pl/profile.pl >>patsend +chmod +x patsend +$eunicefix patsend diff --git a/pat/patsnap.SH b/pat/patsnap.SH new file mode 100755 index 0000000..a5e8754 --- /dev/null +++ b/pat/patsnap.SH @@ -0,0 +1,124 @@ +case $CONFIG in +'') + if test -f config.sh; then TOP=.; + elif test -f ../config.sh; then TOP=..; + elif test -f ../../config.sh; then TOP=../..; + elif test -f ../../../config.sh; then TOP=../../..; + elif test -f ../../../../config.sh; then TOP=../../../..; + else + echo "Can't find config.sh."; exit 1 + fi + . $TOP/config.sh + ;; +esac +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting pat/patsnap (with variable substitutions)" +cat >patsnap <>patsnap <<'!NO!SUBS!' + +$progname = &profile; # Read ~/.dist_profile +require 'getopts.pl'; +&usage unless $#ARGV >= 0; +&usage unless &Getopts("aho:V"); + +$SNAPSHOT = 'SNAPSHOT'; # Default snapshot file name + +if ($opt_V) { + print STDERR "$progname $version PL$patchlevel\n"; + exit 0; +} elsif ($opt_h) { + &usage; +} + +&readpackage; + +$RCSEXT = ',v' unless $RCSEXT; +$TOPDIR = ''; # We are at the top-level directory +$SNAPSHOT = $opt_o if $opt_o; + +if ($opt_a) { + open(MANI,"MANIFEST.new") || die "$progname: can't read MANIFEST.new: $!\n"; + @ARGV = (); + while () { + chop; + s|^\./||; + next if m|^patchlevel.h|; # Special file + ($_) = split(' '); + next if -d; + push(@ARGV,$_); + } + close MANI; +} + +open(SNAPSHOT, ">$SNAPSHOT") || die "$progname: can't create $SNAPSHOT: $!\n"; + +foreach $file (@ARGV) { + $files = &rcsargs($file); + @files = split(' ',$files); + $revs=0; + $rlog = `rlog -r$baserev -r$revbranch $files 2>&1`; + ($revs) = ($rlog =~ /selected revisions: (\d+)/); + if (!$revs) { + print "$progname: $file has never been checked in--skipping\n"; + next; + } + elsif ($revs == 1) { + print "$progname: last revision for $file is $baserev.\n"; + print SNAPSHOT "$file\t$baserev\n"; + } + else { + ($lastrev) = ($rlog =~ /revision $revbranch\.(\d+)/); + print "$progname: last revision for $file is $revbranch.$lastrev.\n"; + print SNAPSHOT "$file\t$revbranch.$lastrev\n"; + } +} + +close SNAPSHOT; + +sub usage { + print STDERR <>patsnap +$grep -v '^;#' ../pl/rcsargs.pl >>patsnap +$grep -v '^;#' ../pl/comment.pl >>patsnap +$grep -v '^;#' ../pl/tilde.pl >>patsnap +$grep -v '^;#' ../pl/profile.pl >>patsnap +chmod +x patsnap +$eunicefix patsnap diff --git a/patchlevel.h b/patchlevel.h new file mode 100644 index 0000000..98a391c --- /dev/null +++ b/patchlevel.h @@ -0,0 +1,4 @@ +/* dist-3.0 - 18 Aug 1993 */ + +#define VERSION 3.0 +#define PATCHLEVEL 70 diff --git a/pl/comment.pl b/pl/comment.pl new file mode 100644 index 0000000..2059466 --- /dev/null +++ b/pl/comment.pl @@ -0,0 +1,46 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: comment.pl,v $ +;# Revision 3.0 1993/08/18 12:10:50 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +sub rcscomment { + local($file) = @_; + local($comment) = ''; + open(FILE,$file); + while () { + if (/^(.*)\$Log[:\$]/) { # They know better than us (hopefully) + $comment = $1; + last; + } + } + close FILE; + unless ($comment) { + if ($file =~ /\.SH$|[Mm]akefile/) { # Makefile template + $comment = '# '; + } elsif ($file =~ /\.U$/) { # Metaconfig unit + $comment = '?RCS: '; + } elsif ($file =~ /\.man$/) { # Manual page + $comment = "''' "; + } elsif ($file =~ /\.\d\w?$/) { # Manual page + $comment = "''' "; + } elsif ($file =~ /\.[chyl]$/) { # C source + $comment = " * "; + } elsif ($file =~ /\.e$/) { # Eiffel source + $comment = "-- "; + } elsif ($file =~ /\.pl$/) { # Perl library + $comment = ";# "; + } + } + $comment; +} + diff --git a/pl/copyright.pl b/pl/copyright.pl new file mode 100644 index 0000000..5216048 --- /dev/null +++ b/pl/copyright.pl @@ -0,0 +1,71 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: copyright.pl,v $ +;# Revision 3.0 1993/08/18 12:10:51 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +;# Copyright expansion. The @COPYRIGHT@ symbol is expanded the first time +;# it is seen in a file, and before the $Log RCS marker is reached. The +;# automaton needs to be reset for each file. +;# +package copyright; + +# Read in copyright file +sub init { + local($file) = @_; # Copyright file + undef @copyright; + open(COPYRIGHT, $file) || die "Can't open $file: $!\n"; + chop(@copyright = ); + close COPYRIGHT; +} + +# Reset the automaton for a new file. +sub reset { + $copyright_seen = @copyright ? 0 : 1; + $marker_seen = 0; +} + +# Filter file, line by line, and expand the copyright string. The @COPYRIGHT@ +# symbol may be preceded by some random comment. A leader can be defined and +# will be pre-pended to all the input lines. +sub filter { + local($line, $leader) = @_; # Leader is optional + return $leader . $line if $copyright_seen || $marker_seen; + $marker_seen = 1 if $line =~ /\$Log[:\$]/; + $copyright_seen = 1 if $line =~ /\@COPYRIGHT\@/; + return $leader . $line unless $copyright_seen; + local($comment, $trailer) = $line =~ /^(.*)\@COPYRIGHT\@\s*(.*)/; + $comment = $leader . $comment; + $comment . join("\n$comment", @copyright) . "\n"; +} + +# Filter output of $cmd redirected into $file by expanding copyright, if any. +sub expand { + local($cmd, $file) = @_; + if (@copyright) { + open(CMD,"$cmd|") || die "Can't start '$cmd': $!\n"; + open(OUT, ">$file") || die "Can't create $file: $!\n"; + &reset; + local($_); + while () { + print OUT &filter($_); + } + close OUT; + close CMD; + } else { + system "$cmd > $file"; + die "Command '$cmd' failed!" if $?; + } +} + +package main; + diff --git a/pl/editor.pl b/pl/editor.pl new file mode 100644 index 0000000..4c59cc4 --- /dev/null +++ b/pl/editor.pl @@ -0,0 +1,23 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: editor.pl,v $ +;# Revision 3.0.1.1 1993/08/25 14:08:07 ram +;# patch6: created +;# +# Compute suitable editor name +sub geteditor { + local($editor) = $ENV{'VISUAL'}; + $editor = $ENV{'EDITOR'} unless $editor; + $editor = $defeditor unless $editor; + $editor = 'vi' unless $editor; + $editor; +} + diff --git a/pl/fullname.pl b/pl/fullname.pl new file mode 100644 index 0000000..3305d10 --- /dev/null +++ b/pl/fullname.pl @@ -0,0 +1,49 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: fullname.pl,v $ +;# Revision 3.0 1993/08/18 12:10:52 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +sub getfullname { + local($logname) = @_; + local($foo,$bar); + if ($ENV{'NAME'}) { + $ENV{'NAME'}; + } else { + open(PASSWD,'/etc/passwd') || die "Can't open /etc/passwd"; + while () { + /(\w+):/; + last if $1 eq $logname; + } + close PASSWD; + local($login,$passwd,$uid,$gid,$gcos,$home,$shell) = split(/:/); + if (-f "$home/.fullname") { + open(FN,"$home/.fullname"); + chop($foo = ); + close FN; + $foo; + } elsif ($nametype eq 'bsd') { + $gcos =~ s/[,;].*//; + if ($gcos =~ /&/) { # oh crud + ($foo,$bar) = ($logname =~ /(.)(.*)/); + $foo =~ y/a-z/A-Z/; + $gcos =~ s/&/$foo$bar/; + } + $gcos; + } else { + $gcos =~ s/[(].*//; + $gcos =~ s/.*-//; + $gcos; + } + } +} + diff --git a/pl/listedit.pl b/pl/listedit.pl new file mode 100644 index 0000000..4eb5c81 --- /dev/null +++ b/pl/listedit.pl @@ -0,0 +1,36 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: listedit.pl,v $ +;# Revision 3.0.1.2 1993/08/27 14:40:57 ram +;# patch7: forgot to unlink temporary file +;# +;# Revision 3.0.1.1 1993/08/25 14:08:12 ram +;# patch6: created +;# +;# Requires geteditor.pl +;# +# Allow user to inplace-edit a list of items held in an array +sub listedit { + local(*list) = @_; + local($tmp) = "/tmp/dist.$$"; + local($editor) = &geteditor; + open(TMP, ">$tmp") || die "Can't create $tmp: $!\n"; + foreach $item (@list) { + print TMP $item, "\n"; + } + close TMP; + system "$editor $tmp"; + open(TMP, "$tmp") || die "Can't reopen $tmp: $!\n"; + chop(@list = ); + close TMP; + unlink $tmp; +} + diff --git a/pl/logname.pl b/pl/logname.pl new file mode 100644 index 0000000..70e3a03 --- /dev/null +++ b/pl/logname.pl @@ -0,0 +1,24 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: logname.pl,v $ +;# Revision 3.0 1993/08/18 12:10:53 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +sub getlogname { + local($logname) = $ENV{'USER'}; + $logname = $ENV{'LOGNAME'} unless $logname; + chop($logname = `who am i`) unless $logname; + $logname =~ s/\s.*//; + $logname =~ s/.*!//; + $logname; +} + diff --git a/pl/makedir.pl b/pl/makedir.pl new file mode 100644 index 0000000..a358deb --- /dev/null +++ b/pl/makedir.pl @@ -0,0 +1,29 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: makedir.pl,v $ +;# Revision 3.0 1993/08/18 12:10:54 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +# Make directories for files +# E.g, for /usr/lib/perl/foo, it will check for all the +# directories /usr, /usr/lib, /usr/lib/perl and make +# them if they do not exist. +sub makedir { + local($_) = shift; + local($dir) = $_; + if (!-d && $_ ne '') { + # Make dirname first + do makedir($_) if s|(.*)/.*|\1|; + mkdir($dir, 0700) if ! -d $dir; + } +} + diff --git a/pl/manifake.pl b/pl/manifake.pl new file mode 100644 index 0000000..1096adf --- /dev/null +++ b/pl/manifake.pl @@ -0,0 +1,42 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: manifake.pl,v $ +;# Revision 3.0 1993/08/18 12:10:55 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +sub manifake { + # make MANIFEST and MANIFEST.new say the same thing + if (! -f $NEWMANI) { + if (-f $MANI) { + open(IN,$MANI) || die "Can't open $MANI"; + open(OUT,">$NEWMANI") || die "Can't create $NEWMANI"; + while () { + if (/---/) { + # Everything until now was a header... + close OUT; + open(OUT,">$NEWMANI") || + die "Can't recreate $NEWMANI"; + next; + } + s/^\s*(\S+\s+)[0-9]*\s*(.*)/$1$2/; + print OUT; + print OUT "\n" unless /\n$/; # If no description + } + close IN; + close OUT; + } + else { +die "You need to make a $NEWMANI file, with names and descriptions.\n"; + } + } +} + diff --git a/pl/newer.pl b/pl/newer.pl new file mode 100644 index 0000000..21839d2 --- /dev/null +++ b/pl/newer.pl @@ -0,0 +1,78 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: newer.pl,v $ +;# Revision 3.0.1.2 1994/01/24 14:33:48 ram +;# patch16: now also aborts when .newer file holds a single new-line +;# +;# Revision 3.0.1.1 1993/09/09 11:51:07 ram +;# patch9: now skips the 'users' file when computing newest file list +;# +;# Revision 3.0 1993/08/18 12:10:56 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +sub newer { + open(FIND, "find . -type f -newer patchlevel.h -print | sort |") || + die "Can't run find.\n"; + open(NEWER,">.newer") || die "Can't create .newer.\n"; + open(MANI,"MANIFEST.new"); + while () { + ($name,$foo) = split; + $mani{$name} = 1; + } + close MANI; + while () { + s|^\./||; + chop; + next if m|^MANIFEST|; + next if m|^PACKLIST$|; + if (!$mani{$_}) { + next if m|^MANIFEST.new$|; + next if m|^Changes$|; + next if m|^Wanted$|; + next if m|^.package$|; + next if m|^bugs|; + next if m|^users$|; + next if m|^UU/|; + next if m|^RCS/|; + next if m|/RCS/|; + next if m|^config.sh$|; + next if m|/config.sh$|; + next if m|^make.out$|; + next if m|/make.out$|; + next if m|^all$|; + next if m|/all$|; + next if m|^core$|; + next if m|/core$|; + next if m|^toto|; + next if m|/toto|; + next if m|^\.|; + next if m|/\.|; + next if m|\.o$|; + next if m|\.old$|; + next if m|\.orig$|; + next if m|~$|; + next if $mani{$_ . ".SH"}; + next if m|(.*)\.c$| && $mani{$1 . ".y"}; + next if m|(.*)\.c$| && $mani{$1 . ".l"}; + next if (-x $_ && !m|^Configure$|); + } + print NEWER $_,"\n"; + } + close FIND; + close NEWER; + print "Please remove unwanted files...\n"; + sleep(2); + system '${EDITOR-vi} .newer'; + die "Aborted.\n" unless -s '.newer' > 1; + @ARGV = split(' ',`cat .newer`); +} + diff --git a/pl/package.pl b/pl/package.pl new file mode 100644 index 0000000..ba52e1a --- /dev/null +++ b/pl/package.pl @@ -0,0 +1,40 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: package.pl,v $ +;# Revision 3.0 1993/08/18 12:10:57 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +sub readpackage { + if (! -f '.package') { + if ( + -f '../.package' || + -f '../../.package' || + -f '../../../.package' || + -f '../../../../.package' + ) { + die "Run in top level directory only.\n"; + } else { + die "No .package file! Run packinit.\n"; + } + } + open(PACKAGE,'.package'); + while () { + next if /^:/; + next if /^#/; + if (($var,$val) = /^\s*(\w+)=(.*)/) { + $val = "\"$val\"" unless $val =~ /^['"]/; + eval "\$$var = $val;"; + } + } + close PACKAGE; +} + diff --git a/pl/patseq.pl b/pl/patseq.pl new file mode 100644 index 0000000..6647695 --- /dev/null +++ b/pl/patseq.pl @@ -0,0 +1,27 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: patseq.pl,v $ +;# Revision 3.0.1.1 1993/08/24 12:22:14 ram +;# patch3: created +;# +;# +# Compute patch sequence by scanning the bugs directory and looking for +# .logs and/or .mods files to determine what was the last issued patch series. +sub patseq { + local($cur) = @_; # Current patch level + local(@seq); # Issued patch sequence + local($i); + for ($i = 1; $i <= $cur; $i++) { + push(@seq, $i) if -f "bugs/.logs$i" || -f "bugs/.mods$i"; + } + @seq; +} + diff --git a/pl/profile.pl b/pl/profile.pl new file mode 100644 index 0000000..5a588ff --- /dev/null +++ b/pl/profile.pl @@ -0,0 +1,73 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: profile.pl,v $ +;# Revision 3.0.1.1 1994/01/24 14:33:53 ram +;# patch16: created +;# +;# +;# Dist profile management (works like MH and its ~/.mh_profile): +;# - Profile name is held in the environment variable DIST. If not defined, +;# use ~/.dist_profile by default. +;# - Each line in the profile not starting with a '#' (comment line) should +;# have the following format: +;# progname: additional command line options +;# The profile is parsed once when the command is launched and profile +;# options are added at the beginning of the @ARGV array. +;# +;# Per-program configuration values may be also be added. For instance, +;# program foo may pay attention to a profile component 'bar', which may be +;# set via: +;# foo-bar: value +;# i.e. the program name is followed by a '-', followed by the profile +;# component. +;# +;# Uses &tilda_expand to perform ~name substitution. +;# Requires shellwords.pl to properly quote shell words (perl library). +;# +# Set up profile components into %Profile, add any profile-supplied options +# into @ARGV and return the command invocation name. +sub profile { + local($profile) = &tilda_expand($ENV{'DIST'} || '~/.dist_profile'); + local($me) = $0; # Command name + $me =~ s|.*/(.*)|$1|; # Keep only base name + return $me unless -s $profile; + local(*PROFILE); # Local file descriptor + local($options) = ''; # Options we get back from profile + unless (open(PROFILE, $profile)) { + warn "$me: cannot open $profile: $!\n"; + return; + } + local($_); + local($component); + while () { + next if /^\s*#/; # Skip comments + next unless /^$me/o; + if (s/^$me://o) { # progname: options + chop; + $options .= $_; # Merge options if more than one line + } + elsif (s/^$me-([^:]+)://o) { # progname-component: value + $component = $1; + chop; + s/^\s+//; # Trim leading and trailing spaces + s/\s+$//; + $Profile{$component} = $_; + } + } + close PROFILE; + return unless $options; + require 'shellwords.pl'; + local(@opts); + eval '@opts = &shellwords($options)'; # Protect against mismatched quotes + unshift(@ARGV, @opts); + return $me; # Return our invocation name +} + diff --git a/pl/rangeargs.pl b/pl/rangeargs.pl new file mode 100644 index 0000000..9212f84 --- /dev/null +++ b/pl/rangeargs.pl @@ -0,0 +1,48 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: rangeargs.pl,v $ +;# Revision 3.0 1993/08/18 12:10:58 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +sub rangeargs { + local($result) = ''; + local($min,$max,$_); + open(PL,"patchlevel.h") || die "Can't open patchlevel.h\n"; + while () { + $maxspec = $1 if /^#define\s+PATCHLEVEL\s+(\d+)/; + } + close PL; + die "Malformed patchlevel.h file.\n" if $maxspec eq ''; + while ($#_ >= 0) { + $_ = shift(@_); + while (/^\s*\d/) { + s/^\s*(\d+)//; + $min = $1; + if (s/^,//) { + $max = $min; + } elsif (s/^-(\d*)//) { + $max = $1; + if ($max == 0 && $maxspec) { + $max = $maxspec; + } + s/^[^,],?//; + } else { + $max = $min; + } + for ($i = $min; $i <= $max; ++$i) { + $result .= $i . ' '; + } + } + } + $result; +} + diff --git a/pl/rcsargs.pl b/pl/rcsargs.pl new file mode 100644 index 0000000..8fdeab1 --- /dev/null +++ b/pl/rcsargs.pl @@ -0,0 +1,60 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: rcsargs.pl,v $ +;# Revision 3.0 1993/08/18 12:11:01 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +sub rcsargs { + local($result) = ''; + local($_); + while ($_ = shift(@_)) { + if ($_ =~ /^-/) { + $result .= $_ . ' '; + } elsif ($#_ >= 0 && do equiv($_,$_[0])) { + $result .= $_ . ' ' . $_[0] . ' '; + shift(@_); + } else { + $result .= $_ . ' ' . do other($_) . ' '; + } + } + $result; +} + +sub equiv { + local($s1, $s2) = @_; + $s1 =~ s|.*/||; + $s2 =~ s|.*/||; + if ($s1 eq $s2) { + 0; + } elsif ($s1 =~ s/$RCSEXT$// || $s2 =~ s/$RCSEXT$//) { + $s1 eq $s2; + } else { + 0; + } +} + +sub other { + local($s1) = @_; + ($dir,$file) = ('./',$s1) unless local($dir,$file) = ($s1 =~ m|(.*/)(.*)|); + $dir = $TOPDIR . $dir if -d $TOPDIR . "$dir/RCS"; + local($wasrcs) = ($file =~ s/$RCSEXT$//); + if ($wasrcs) { + `mkdir $dir` unless -d $dir; + $dir =~ s|RCS/||; + } else { + $dir .= 'RCS/'; + `mkdir $dir` unless -d $dir; + $file .= $RCSEXT; + } + "$dir$file"; +} + diff --git a/pl/snapshot.pl b/pl/snapshot.pl new file mode 100644 index 0000000..8eb40d9 --- /dev/null +++ b/pl/snapshot.pl @@ -0,0 +1,28 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: snapshot.pl,v $ +;# Revision 3.0.1.1 1993/08/24 12:22:34 ram +;# patch3: created +;# +# Read snapshot file and build %Snap, indexed by file name -> RCS revision +sub readsnapshot { + local($snap) = @_; + open(SNAP, $snap) || warn "Can't open $snap: $!\n"; + local($_); + local($file, $rev); + while () { + next if /^#/; + ($file, $rev) = split; + $Snap{$file} = "$rev"; + } + close SNAP; +} + diff --git a/pl/tilde.pl b/pl/tilde.pl new file mode 100644 index 0000000..0890ffb --- /dev/null +++ b/pl/tilde.pl @@ -0,0 +1,25 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# $Log: tilde.pl,v $ +;# Revision 3.0 1993/08/18 12:11:01 ram +;# Baseline for dist 3.0 netwide release. +;# +;# +# Perform ~name expansion ala ksh... +# (banish csh from your vocabulary ;-) +sub tilda_expand { + local($path) = @_; + return $path unless $path =~ /^~/; + $path =~ s:^~([^/]+):(getpwnam($1))[$[+7]:e; # ~name + $path =~ s:^~:$ENV{'HOME'} || (getpwuid($<))[$[+7]:e; # ~ + $path; +} + diff --git a/pl/users.pl b/pl/users.pl new file mode 100644 index 0000000..807e0dc --- /dev/null +++ b/pl/users.pl @@ -0,0 +1,48 @@ +;# $Id$ +;# +;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +;# +;# You may redistribute only under the terms of the Artistic Licence, +;# as specified in the README file that comes with the distribution. +;# You may reuse parts of this distribution only within the terms of +;# that same Artistic Licence; a copy of which may be found at the root +;# of the source tree for dist 4.0. +;# +;# Original Author: Graham Stoney +;# +;# $Log: users.pl,v $ +;# Revision 3.0.1.2 1993/11/10 17:41:37 ram +;# patch14: adapted users file format to new @SH package command +;# +;# Revision 3.0.1.1 1993/08/24 12:23:19 ram +;# patch3: added some comments about the users file format +;# patch3: random cleanup +;# +;# Revision 3.0 1993/08/18 12:11:02 ram +;# Baseline for dist 3.0 netwide release. +;# +;# The users file, as built by mailagent upon reception of an '@SH package' +;# command contains a list of e-mail addresses, prefixed by a single letter. +;# Users tagged with 'U' or 'L' are plain users, those with 'M' wish to +;# receive issued patches by e-mail while 'N' users simply want to be notified +;# when a new patch is released; +;# +sub readusers { + return unless open(USERS, 'users'); + local($_); + local($status, $name, $pl); + while () { + next if /^#/; + chop if /\n$/; # Emacs may leave final line without \n + ($status, $pl, $name) = split; + # Handle oldstyle two-field user file format (PL13 and before) + $name = $pl unless defined $name; + if ($status eq 'M') { + $recipients = $recipients ? "$recipients $name" : $name; + } elsif ($status eq 'N') { + $notify = $notify ? "$notify $name" : $name; + } + } + close USERS; +} + -- cgit v1.2.3 From e92a7f8de2e4633ce0e5da32472079d45687f9b2 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 24 Aug 2006 18:22:11 +0000 Subject: Updated copyright date. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@2 2592e710-e01b-42a5-8df0-11608a6cc53d --- README | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README b/README index 4f31741..8417c81 100644 --- a/README +++ b/README @@ -4,7 +4,7 @@ Copyright (c) 1988, Larry Wall Copyright (c) 1990-1992, Harlan Stenn Copyright (c) 1991-1997, Raphael Manfredi - Copyright (c) 2004-2005, Raphael Manfredi + Copyright (c) 2004-2006, Raphael Manfredi ------------------------------------------------------------------------ This program is free software; you can redistribute it and/or modify -- cgit v1.2.3 From f8465795cd1398d8150f7d80099e9a0182cb9b29 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 21:39:07 +0000 Subject: Added keyword substitution property. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@3 2592e710-e01b-42a5-8df0-11608a6cc53d --- Jmakefile | 2 +- bin/Jmakefile | 2 +- bin/manicheck.man | 2 +- bin/manilist.man | 2 +- bin/packinit.man | 2 +- dist.man | 2 +- jmake/Jmakefile | 2 +- jmake/jmake.man | 2 +- jmake/jmkmf.man | 2 +- kit/Jmakefile | 2 +- kit/kitpost.man | 2 +- kit/kitsend.man | 2 +- kit/makeSH.man | 2 +- kit/makedist.man | 2 +- kit/manifake.man | 2 +- lib/C/Jmakefile | 2 +- lib/C/fake/Jmakefile | 2 +- lib/Jmakefile | 2 +- mcon/Jmakefile | 2 +- mcon/man/Jmakefile | 2 +- pat/Jmakefile | 2 +- pat/pat.man | 2 +- 22 files changed, 22 insertions(+), 22 deletions(-) diff --git a/Jmakefile b/Jmakefile index a64b607..011007e 100644 --- a/Jmakefile +++ b/Jmakefile @@ -2,7 +2,7 @@ * Main Jmakefile for dist 3.0 */ -;# $Id: Jmakefile,v 3.0.1.2 1995/07/25 13:29:41 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/bin/Jmakefile b/bin/Jmakefile index 795cb7b..73de107 100644 --- a/bin/Jmakefile +++ b/bin/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for bin subdirectory. */ -;# $Id: Jmakefile,v 3.0.1.1 1994/01/24 13:42:53 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/bin/manicheck.man b/bin/manicheck.man index e17352a..35087c8 100644 --- a/bin/manicheck.man +++ b/bin/manicheck.man @@ -1,4 +1,4 @@ -''' $Id: manicheck.man,v 3.0 1993/08/18 12:04:02 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/bin/manilist.man b/bin/manilist.man index f7dcd0d..5ad455c 100644 --- a/bin/manilist.man +++ b/bin/manilist.man @@ -1,4 +1,4 @@ -''' $Id: manilist.man,v 3.0.1.3 1995/05/12 11:57:31 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/bin/packinit.man b/bin/packinit.man index a43abdc..09702fb 100644 --- a/bin/packinit.man +++ b/bin/packinit.man @@ -1,4 +1,4 @@ -''' $Id: packinit.man,v 3.0.1.4 1995/07/25 13:31:38 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/dist.man b/dist.man index 4a7ab9a..bd6ba49 100644 --- a/dist.man +++ b/dist.man @@ -1,4 +1,4 @@ -''' $Id: dist.man,v 3.0.1.6 1995/05/12 11:57:53 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/jmake/Jmakefile b/jmake/Jmakefile index 81b9dc4..ae82b24 100644 --- a/jmake/Jmakefile +++ b/jmake/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for jmake */ -;# $Id: Jmakefile,v 3.0.1.2 1995/03/21 08:34:16 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/jmake/jmake.man b/jmake/jmake.man index 2b0997f..5c837e4 100644 --- a/jmake/jmake.man +++ b/jmake/jmake.man @@ -1,4 +1,4 @@ -''' $Id: jmake.man,v 3.0.1.3 2004/08/22 09:01:55 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/jmake/jmkmf.man b/jmake/jmkmf.man index 93af1f4..bea60d1 100644 --- a/jmake/jmkmf.man +++ b/jmake/jmkmf.man @@ -1,4 +1,4 @@ -''' $Id: jmkmf.man,v 3.0.1.1 1995/05/12 11:58:03 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/kit/Jmakefile b/kit/Jmakefile index 9d2b41a..f07e40a 100644 --- a/kit/Jmakefile +++ b/kit/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for kit maker */ -;# $Id: Jmakefile,v 3.0.1.2 1994/04/22 09:35:35 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/kit/kitpost.man b/kit/kitpost.man index d7ebf90..aad9ab2 100644 --- a/kit/kitpost.man +++ b/kit/kitpost.man @@ -1,4 +1,4 @@ -''' $Id: kitpost.man,v 3.0.1.2 1995/05/12 11:58:09 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/kit/kitsend.man b/kit/kitsend.man index d5bca4c..ebe5459 100644 --- a/kit/kitsend.man +++ b/kit/kitsend.man @@ -1,4 +1,4 @@ -''' $Id: kitsend.man,v 3.0.1.1 1994/05/06 14:00:11 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/kit/makeSH.man b/kit/makeSH.man index 41b63e4..30f462a 100644 --- a/kit/makeSH.man +++ b/kit/makeSH.man @@ -1,4 +1,4 @@ -''' $Id: makeSH.man,v 3.0 1993/08/18 12:04:27 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/kit/makedist.man b/kit/makedist.man index 0a13318..17af969 100644 --- a/kit/makedist.man +++ b/kit/makedist.man @@ -1,5 +1,5 @@ .rn '' }` -''' $Id: makedist.man,v 3.0.1.2 1995/05/12 11:58:16 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/kit/manifake.man b/kit/manifake.man index 9ec2754..bfad581 100644 --- a/kit/manifake.man +++ b/kit/manifake.man @@ -1,4 +1,4 @@ -''' $Id: manifake.man,v 3.0.1.1 1995/05/12 11:58:21 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' diff --git a/lib/C/Jmakefile b/lib/C/Jmakefile index 1b2b569..5241541 100644 --- a/lib/C/Jmakefile +++ b/lib/C/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for C subdirectory. */ -;# $Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:38 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/lib/C/fake/Jmakefile b/lib/C/fake/Jmakefile index 41afc72..52fd365 100644 --- a/lib/C/fake/Jmakefile +++ b/lib/C/fake/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for C/fake subdirectory. */ -;# $Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:44 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/lib/Jmakefile b/lib/Jmakefile index a44f86a..66575ad 100644 --- a/lib/Jmakefile +++ b/lib/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for lib subdirectory. */ -;# $Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:31 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/mcon/Jmakefile b/mcon/Jmakefile index 559ba87..61034b5 100644 --- a/mcon/Jmakefile +++ b/mcon/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for metaconfig */ -;# $Id: Jmakefile,v 3.0.1.4 1995/07/25 13:23:09 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/mcon/man/Jmakefile b/mcon/man/Jmakefile index 737f8c9..6c1e417 100644 --- a/mcon/man/Jmakefile +++ b/mcon/man/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for metaconfig manual pages */ -;# $Id: Jmakefile,v 3.0 1993/08/18 12:10:13 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/pat/Jmakefile b/pat/Jmakefile index 3edf094..e1c6c4b 100644 --- a/pat/Jmakefile +++ b/pat/Jmakefile @@ -2,7 +2,7 @@ * Jmakefile for patching tools. */ -;# $Id: Jmakefile,v 3.0.1.3 1995/07/24 09:57:21 ram Exp ram $ +;# $Id$ ;# ;# Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ;# diff --git a/pat/pat.man b/pat/pat.man index 2d46a8c..e950620 100644 --- a/pat/pat.man +++ b/pat/pat.man @@ -1,5 +1,5 @@ .rn '' }` -''' $Id: pat.man,v 3.0.1.7 1997/02/28 16:32:45 ram Exp ram $ +''' $Id$ ''' ''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ''' -- cgit v1.2.3 From 2dfa5925c546f2a89d605de38bba86edba83ee75 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 21:54:31 +0000 Subject: Let metaconfig use the MANIFEST file if there is no MANIFEST.new. The MANIFEST.new file is necessary when using the "pat" tools, but not when running metaconfig by itself. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@4 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/man/mconfig.SH | 8 +++++++- mcon/mconfig.SH | 5 +++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH index 059091b..44a6ae5 100755 --- a/mcon/man/mconfig.SH +++ b/mcon/man/mconfig.SH @@ -159,7 +159,8 @@ your .SH file). .IP \(bu Create a MANIFEST.new file in your top level directory that lists all the files in your package. This file will remain private and will not be -part of the final distribution. +part of the final distribution. (As a convenience, the MANIFEST file will +be used by \fImetaconfig\fR if there is no MANIFEST.new file yet.) The filename should be the first field on each line. After some whitespace you can add a short comment describing your file. Only source files should be listed in there. The special file @@ -972,6 +973,11 @@ it uses its units and your source code to produce all the needed configuration files. If you intend to write new units, you should have a good understanding of the whole scheme. .PP +If there is no MANIFEST.new file, \fImetaconfig\fR will try to use the +MANIFEST file instead, for convenience. Everywhere we mention MANIFEST.new, +it can be understood as MANIFEST provided there is no MANIFEST.new file +found at the root of your package. +.PP Assuming your MANIFEST.new file is properly set and lists all the source files you wish to configure, and that you have run \fIpackint\fR in your root source directory to create a \fI.package\fR file, you may run diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index 8fb6095..140fb6e 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -119,6 +119,11 @@ sub init { sub init_constants { $NEWMANI = 'MANIFEST.new'; # List of files to be scanned $MANI = 'MANIFEST'; # For manifake + + # The distinction between MANIFEST.new and MANIFEST can make sense + # when the "pat" tools are used, but if only metaconfig is used, then + # we can very well leave without a MANIFEST.new. --RAM, 2006-08-25 + $NEWMANI = $MANI if -f $MANI && ! -f $NEWMANI; } # Record the exceptions -- almost all symbols but these are lower case -- cgit v1.2.3 From bcdddbe9cafd8b9892778f5705e7cd7c6a65be1f Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 22:09:39 +0000 Subject: Fixed Jmakefile: there's no need to request manual inclusion of symbols. The MakeDirectories() target was using @! instead of proper @@ terminator to introduce the commands. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@5 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 2 +- lib/Jmakefile | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index cf3e9d6..e8be807 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -1328,7 +1328,7 @@ LintDirs($(SUBDIRS)) * Generate rules to create a hierarchy of directories. */ #define MakeDirectories(step,dirs) @!\ -step:: @!\ +step:: @@\ MakeDirs(dirs) diff --git a/lib/Jmakefile b/lib/Jmakefile index 66575ad..ce4aba9 100644 --- a/lib/Jmakefile +++ b/lib/Jmakefile @@ -27,8 +27,6 @@ INSTALLFLAGS = -m 444 all:: /* So that default make does not default to install */ ->PRIVLIB /* Grrr.. Have to let jmake know I need this */ - MakeDirectories(install,$(PRIVLIB)/lib) InstallMultiple($(FILES),$(PRIVLIB)/lib) @@ -40,8 +38,6 @@ InstallMultiple($(FILES),$(PRIVLIB)/lib) * file.SH. */ #define InstallSingleExt(step,file,dest,flags,old,new) @!\ ->INSTALL @!\ ->RM @!\ step:: file^^old @@\ @case '${MFLAGS}' in *[i]*) set +e;; esac; \ @@\ (set -x; $(INSTALL) -c flags file^^old dest/file^^new) @@\ -- cgit v1.2.3 From 381af5cc13d5dfd639894d4250970fd84dd99f30 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 22:21:46 +0000 Subject: Advertise SVN's repository for dist in every generated Configure script. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@6 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Head.U | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/U/Head.U b/mcon/U/Head.U index 1ee0e6b..bb1464b 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -77,8 +77,8 @@ ?X: # Note: this Configure script was generated automatically. Rather than # working with this copy of Configure, you may wish to get metaconfig. -# The dist package (which contains metaconfig) is available at -# http://sourceforge.net/projects/dist/ +# The dist package (which contains metaconfig) is available via SVN: +# svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist ?X: ?X: NOTA BENE: ?X: If you develop you own version of metaconfig based on this work, -- cgit v1.2.3 From ff5bfd9d5f789a34491d207e31b288a0ebbd9a7c Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 22:24:13 +0000 Subject: InstallTarget() now uses :: targets. Default empty rule for all makefiles is now called "all" instead of "emptyrule" because if there is nothing to be done, GNU make prints the target name and "emptyrule" is not pretty. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@7 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 16 ++++++++-------- jmake/files/Jmake.tmpl | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index e8be807..636c561 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -592,14 +592,14 @@ local_clobber:: local_realclean @!\ * Generate rules to recursively install files */ #define InstallTarget() @!\ -?SUBDIRS:install: local_install sub_install @!\ -%SUBDIRS:install: local_install @!\ -?SUBDIRS:install.man: maybe_install.man sub_install.man @!\ -%SUBDIRS:install.man: maybe_install.man @!\ -?SUBDIRS:deinstall: sub_deinstall local_deinstall @!\ -%SUBDIRS:deinstall: local_deinstall @!\ -?SUBDIRS:deinstall.man: sub_deinstall.man maybe_deinstall.man @!\ -%SUBDIRS:deinstall.man: maybe_deinstall.man @!\ +?SUBDIRS:install:: local_install sub_install @!\ +%SUBDIRS:install:: local_install @!\ +?SUBDIRS:install.man:: maybe_install.man sub_install.man @!\ +%SUBDIRS:install.man:: maybe_install.man @!\ +?SUBDIRS:deinstall:: sub_deinstall local_deinstall @!\ +%SUBDIRS:deinstall:: local_deinstall @!\ +?SUBDIRS:deinstall.man:: sub_deinstall.man maybe_deinstall.man @!\ +%SUBDIRS:deinstall.man:: maybe_deinstall.man @!\ @!\ ?MANSRC:install.man-yes: local_install.man @!\ install.man-no: @!\ diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index 052ad5e..61f848f 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -151,7 +151,7 @@ all:: .FORCE_DEPEND * These need to be here so that rules in Jmakefile occur first; the blank * all is to make sure that an empty Jmakefile doesn't default to make clean. */ -emptyrule:: +all:: CleanTarget() InstallTarget() -- cgit v1.2.3 From 4b870e0bc18aa7f1ea110a7fb1d3f9d26693bfc9 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 22:27:18 +0000 Subject: Added keyword expansion. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@8 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 4 ++-- jmake/files/Jmake.tmpl | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index 636c561..e303fb1 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -1,12 +1,12 @@ ;######################################################################## ;# Jmake rules for building libraries, programs, scripts, and data files -;# $Id: Jmake.rules,v 3.0.1.7 2004/08/22 08:28:58 ram Exp ram $ +;# $Id$ /* * MACHINE-INDEPENDENT RULES -- DO NOT MODIFY */ -/* $Id: Jmake.rules,v 3.0.1.7 2004/08/22 08:28:58 ram Exp ram $ +/* $Id$ * * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi * diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index 61f848f..80549b5 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -1,7 +1,7 @@ /* * Generic jmake template * - * $Id: Jmake.tmpl,v 3.0.1.3 1997/02/28 14:56:16 ram Exp ram $ + * $Id$ * * Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi * @@ -27,7 +27,7 @@ */ : Makefile.SH generated from Jmake.tmpl and Jmakefile -: $Id: Jmake.tmpl,v 3.0.1.3 1997/02/28 14:56:16 ram Exp ram $ +: $Id$ /************************************************************************* * * -- cgit v1.2.3 From f9946770522c24f18c5bceb3d49894287f99ef8e Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 22:31:50 +0000 Subject: Removed obsoleted ">VAR" lines requesting that the symbol be included. Jmake from 3.5 is now smart enough to figure this out by itself. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@9 2592e710-e01b-42a5-8df0-11608a6cc53d --- Jmakefile | 2 -- bin/Jmakefile | 4 ---- kit/Jmakefile | 4 ---- lib/C/fake/Jmakefile | 2 -- mcon/Jmakefile | 7 ------- mcon/man/Jmakefile | 2 -- pat/Jmakefile | 7 ------- 7 files changed, 28 deletions(-) diff --git a/Jmakefile b/Jmakefile index 011007e..30e7318 100644 --- a/Jmakefile +++ b/Jmakefile @@ -23,8 +23,6 @@ ;# Baseline for dist 3.0 netwide release. ;# ->MANSRC /* This should really become automated */ - all:: /* So that default target is not clobber! */ SetSubdirs(bin mcon jmake pat kit lib) diff --git a/bin/Jmakefile b/bin/Jmakefile index 73de107..aac4157 100644 --- a/bin/Jmakefile +++ b/bin/Jmakefile @@ -30,10 +30,6 @@ BINSH = \ !f.SH \ -expand \\ ->SED ->RM ->MKDEP - depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(BINSH) | \ diff --git a/kit/Jmakefile b/kit/Jmakefile index f07e40a..fed4548 100644 --- a/kit/Jmakefile +++ b/kit/Jmakefile @@ -34,10 +34,6 @@ SCRIPTSH = \ !f.SH \ -expand \\ ->SED ->RM ->MKDEP - depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(SCRIPTSH) | \ diff --git a/lib/C/fake/Jmakefile b/lib/C/fake/Jmakefile index 52fd365..3db766b 100644 --- a/lib/C/fake/Jmakefile +++ b/lib/C/fake/Jmakefile @@ -23,7 +23,5 @@ INSTALLFLAGS = -m 444 all:: /* So that default make does not default to install */ ->PRIVLIB /* Grrr.. Have to let jmake know I need this */ - MakeDirectories(install,$(PRIVLIB)/lib/C/fake) InstallMultiple($(FILES),$(PRIVLIB)/lib/C/fake) diff --git a/mcon/Jmakefile b/mcon/Jmakefile index 61034b5..c40afd8 100644 --- a/mcon/Jmakefile +++ b/mcon/Jmakefile @@ -38,9 +38,6 @@ Glossary: makegloss SimpleShellScriptTarget(makegloss) ->PRIVLIB /* We need the privlib definition */ ->SCRIPTDIR /* As well as the script directory */ - MakeInstallDirectories($(PRIVLIB) $(PRIVLIB)/U) InstallNonExec(Glossary,$(PRIVLIB)) InstallScript(makegloss,$(PRIVLIB)) @@ -78,10 +75,6 @@ BINSH = \ !f.SH \ -expand \\ ->SED ->RM ->MKDEP - depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(BINSH) | \ diff --git a/mcon/man/Jmakefile b/mcon/man/Jmakefile index 6c1e417..489cce2 100644 --- a/mcon/man/Jmakefile +++ b/mcon/man/Jmakefile @@ -17,8 +17,6 @@ ;# Baseline for dist 3.0 netwide release. ;# ->L /* I expect to fix this with a |append command */ - MPAGES = metaconfig.$(L) metalint.$(L) metaxref.$(L) ComplexShellManualTarget($(MPAGES)) diff --git a/pat/Jmakefile b/pat/Jmakefile index e1c6c4b..40f8ced 100644 --- a/pat/Jmakefile +++ b/pat/Jmakefile @@ -42,9 +42,6 @@ PAT = \ NoManPages() /* There is a single man page for all tools */ SimpleShellScriptTarget($(PAT)) ->SCRIPTDIR /* Grrr... I have to find a nicer way!! */ ->MANSRC /* Idem!! */ - InstallMultipleFlags($(PAT),$(SCRIPTDIR),-m 555) InstallManPage(pat,$(MANSRC)) @@ -53,10 +50,6 @@ PATSH = \ !f.SH \ -expand \\ ->SED ->RM ->MKDEP - depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(PATSH) | \ -- cgit v1.2.3 From 0b4cdb836f13414250fd2cbdb8d398f981e4b704 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 22:33:07 +0000 Subject: Regenerated all Makefile.SH files. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@10 2592e710-e01b-42a5-8df0-11608a6cc53d --- Makefile.SH | 132 +++++++++++++++++---------- bin/Makefile.SH | 111 +++++++++++++---------- jmake/Makefile.SH | 49 +++++----- kit/Makefile.SH | 133 ++++++++++++++++------------ lib/C/Makefile.SH | 61 +++++++++---- lib/C/fake/Makefile.SH | 58 +++++++----- lib/Makefile.SH | 81 +++++++++++------ mcon/Makefile.SH | 236 ++++++++++++++++++++++++++++--------------------- mcon/man/Makefile.SH | 79 +++++++++++------ pat/Makefile.SH | 102 ++++++++++++--------- 10 files changed, 633 insertions(+), 409 deletions(-) diff --git a/Makefile.SH b/Makefile.SH index 2b54336..725cf8c 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -1,5 +1,6 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL55] -: $X-Id: Jmake.tmpl,v 3.0.1.2 1995/01/11 14:50:21 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ + case $CONFIG in '') if test -f config.sh; then TOP=.; @@ -21,6 +22,7 @@ DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` echo "Extracting ${DIR}Makefile (with variable substitutions)" INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` DATE=`date` $spitshell >Makefile <>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.3 1995/03/21 08:35:28 ram Exp ram $ +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ + ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.2 1995/07/25 13:29:41 ram Exp ram $ +# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -84,30 +88,34 @@ depend:: @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in bin mcon pat jmake kit ;\ do \ - (cd $$i ; echo "Depending" "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) depend); \ + (cd $$i ; echo "Depending" "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) depend) || exit 1; \ done local_clobber:: $(RM) install -install.man:: dist.man - $(INSTALL) -c -m 444 dist.man $(MANSRC)/dist.$(L) +local_install.man:: dist.man + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(MANSRC) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(MANSRC)); \ + $(INSTALL) -c -m 444 dist.man $(INSTALL_PREFIX)$(MANSRC)/dist.$(L) -deinstall.man:: - $(RM) $(MANSRC)/dist.$(L) +local_deinstall.man:: + $(RM) $(INSTALL_PREFIX)$(MANSRC)/dist.$(L) ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: sub_clean local_clean realclean: sub_realclean local_realclean clobber: sub_clobber local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean $(RM) -r UU @@ -117,15 +125,36 @@ local_clobber:: local_realclean $(RM) -r .config $(RM) Makefile +install:: local_install sub_install +install.man:: maybe_install.man sub_install.man +deinstall:: sub_deinstall local_deinstall +deinstall.man:: sub_deinstall.man maybe_deinstall.man + +install.man-yes: local_install.man +install.man-no: +deinstall.man-yes: local_deinstall.man +deinstall.man-no: + +!NO!SUBS! +case "$installmansrc" in +'') man=no;; +*) man=yes;; +esac +$spitshell >>Makefile <>Makefile <<'!NO!SUBS!' + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ - if test -f Makefile.SH; then \ - echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ - $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ - fi; \ - echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ - $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -144,21 +173,23 @@ subdirs: @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS) ;\ do \ - (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)); \ + (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)) || exit 1; \ done -install:: +sub_install:: @$(MAKE) subdirs TARGET=install VERB="Installing" FLAGS= -deinstall:: +sub_deinstall:: @$(MAKE) subdirs TARGET=deinstall VERB="Deinstalling" FLAGS= + @echo "Back to $(CURRENT) for "deinstall... -install.man:: +sub_install.man:: @$(MAKE) subdirs TARGET=install.man VERB="Installing man pages" FLAGS= -deinstall.man:: +sub_deinstall.man:: @$(MAKE) subdirs TARGET=deinstall.man VERB="Deinstalling man pages" FLAGS= + @echo "Back to $(CURRENT) for "deinstall.man... sub_clean:: @$(MAKE) subdirs TARGET=clean VERB="Cleaning" FLAGS= @@ -176,42 +207,51 @@ tag:: @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS) ;\ do \ - (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) tag); \ + (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) tag) || exit 1; \ done Makefiles:: @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS);\ do \ - echo "Making "Makefiles" in $(DIR)$$i..."; \ - (cd $$i || exit 1; \ - if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ - $(MAKE) $(MFLAGS) Makefiles) \ + echo "Making "Makefiles" in $(DIR)$$i..."; \ + (cd $$i || exit 1; \ + if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ + $(MAKE) $(MFLAGS) Makefiles) || exit 1;\ done Makefiles.SH:: Makefile.SH @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS);\ do \ - case "$(DIR)$$i/" in \ - */*/*/*/) newtop=../../../..;; \ - */*/*/) newtop=../../..;; \ - */*/) newtop=../..;; \ - */) newtop=..;; \ - esac; \ - case "$(TOP)" in \ - /*) newtop="$(TOP)" ;; \ - esac; \ - echo "Making Makefiles.SH in $(DIR)$$i..."; \ - (cd $$i || exit 1; $(MAKE) $(MFLAGS) -f ../Makefile \ - Makefile TOP=$$newtop CURRENT=$(DIR)$$i;\ - $(MAKE) $(MFLAGS) Makefiles.SH) \ + case "$(DIR)$$i/" in \ + */*/*/*/) newtop=../../../..;; \ + */*/*/) newtop=../../..;; \ + */*/) newtop=../..;; \ + */) newtop=..;; \ + esac; \ + case "$(TOP)" in \ + /*) newtop="$(TOP)" ;; \ + esac; \ + echo "Making Makefiles.SH in $(DIR)$$i..."; \ + (cd $$i || exit 1; \ + if test -f Jmakefile; then \ + $(MAKE) $(MFLAGS) -f ../Makefile \ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i && \ + $(MAKE) $(MFLAGS) Makefiles.SH; \ + fi; \ + ) || exit 1; \ done all:: @$(MAKE) subdirs TARGET=all VERB="Making all" FLAGS= +local_install:: +local_deinstall:: +local_install.man:: +local_deinstall.man:: + !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/bin/Makefile.SH b/bin/Makefile.SH index 977ce80..35630ec 100755 --- a/bin/Makefile.SH +++ b/bin/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] -: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ case $CONFIG in '') @@ -22,6 +22,7 @@ DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` echo "Extracting ${DIR}Makefile (with variable substitutions)" INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` DATE=`date` $spitshell >Makefile <>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ - -######################################################################## -# Force 'make depend' to be performed first -- do not edit - -.FORCE_DEPEND:: - -all:: .FORCE_DEPEND +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.1 1994/01/24 13:42:53 ram Exp ram $ +# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -105,34 +99,40 @@ manilist: manilist.SH /bin/sh manilist.SH -install:: $(SCRIPTS) $(LSCRIPTS) - @for file in $(SCRIPTS) $(LSCRIPTS); do \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - (set -x; $(INSTALL) -c -m 555 $$file $(SCRIPTDIR)); \ +local_install:: $(SCRIPTS) $(LSCRIPTS) + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + for file in $(SCRIPTS) $(LSCRIPTS); do \ + (set -x; \ + $(INSTALL) -c -m 555 $$file $(INSTALL_PREFIX)$(SCRIPTDIR)) || \ + exit 1; \ done -deinstall:: +local_deinstall:: @for file in $(SCRIPTS) $(LSCRIPTS); do \ case '${MFLAGS}' in *[i]*) set +e;; esac; \ - (set -x; $(RM) $(SCRIPTDIR)/$$file); \ + (set -x; $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/$$file); \ done -install.man:: - @if test "$(MANSRC)"; then \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - for file in $(SCRIPTS); do \ +local_install.man:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(MANSRC) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(MANSRC)); \ + for file in $(SCRIPTS); do \ + if test -f $$file.man; then \ (set -x; \ - $(INSTALL) -c -m 444 $$file.man $(MANSRC)/$$file.$(L)); \ - done; \ - else exit 0; fi + $(INSTALL) -c -m 444 $$file.man \ + $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)) || \ + exit 1; \ + fi; \ + done -deinstall.man:: - @if test "$(MANSRC)"; then \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - for file in $(SCRIPTS); do \ - (set -x; $(RM) $(MANSRC)/$$file.$(L)); \ - done; \ - else exit 0; fi +local_deinstall.man:: + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(SCRIPTS); do \ + (set -x; $(RM) $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)); \ + done BINSH = \ packinit.SH \ @@ -150,20 +150,42 @@ depend:: ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: local_clean realclean: local_realclean clobber: local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh +install:: local_install +install.man:: maybe_install.man +deinstall:: local_deinstall +deinstall.man:: maybe_deinstall.man + +install.man-yes: local_install.man +install.man-no: +deinstall.man-yes: local_deinstall.man +deinstall.man-no: + +!NO!SUBS! +case "$installmansrc" in +'') man=no;; +*) man=yes;; +esac +$spitshell >>Makefile <>Makefile <<'!NO!SUBS!' + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ if test -f Makefile.SH; then \ @@ -172,7 +194,7 @@ Makefile.SH: Jmakefile fi; \ echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -187,29 +209,22 @@ local_clobber:: ######################################################################## # Empty rules for directories with no sub-directories -- do not edit -install:: +local_install:: @echo "install in $(CURRENT) done." -deinstall:: +local_deinstall:: @echo "deinstall in $(CURRENT) done." -install.man:: +local_install.man:: @echo "install.man in $(CURRENT) done." -deinstall.man:: +local_deinstall.man:: @echo "deinstall.man in $(CURRENT) done." Makefiles:: Makefiles.SH:: -######################################################################## -# Dependencies generated by make depend -# DO NOT DELETE THIS LINE -- make depend relies on it - -# Put nothing here or make depend will gobble it up -.FORCE_DEPEND:: - @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/jmake/Makefile.SH b/jmake/Makefile.SH index e562274..6a651e3 100755 --- a/jmake/Makefile.SH +++ b/jmake/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL70] -: $X-Id: Jmake.tmpl,v 3.0.1.3 1997/02/28 14:56:16 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ case $CONFIG in '') @@ -41,6 +41,7 @@ INSTALLDIR = $INSTALLDIR # Parameters set by Configure -- edit config.sh if changes are needed CTAGS = ctags +JCPPFLAGS = $cppflags L = $manext MANSRC = $installmansrc MV = $mv @@ -58,15 +59,15 @@ SCRIPTS = jmake jmkmf $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.7 2004/08/22 08:28:58 ram Exp ram $ +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.2 1995/03/21 08:34:16 ram Exp ram $ +# $X-Id: Jmakefile 3 2006-08-25 21:39:07Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -106,12 +107,13 @@ jmkmf: jmkmf.SH local_install:: $(SCRIPTS) $(LSCRIPTS) - case '${MFLAGS}' in *[i]*) set +e;; esac; \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ for file in $(SCRIPTS) $(LSCRIPTS); do \ (set -x; \ - $(INSTALL) -c -m 555 $$file $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + $(INSTALL) -c -m 555 $$file $(INSTALL_PREFIX)$(SCRIPTDIR)) || \ + exit 1; \ done local_deinstall:: @@ -121,14 +123,15 @@ local_deinstall:: done local_install.man:: - case '${MFLAGS}' in *[i]*) set +e;; esac; \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ (set -x; test -d $(INSTALL_PREFIX)$(MANSRC) || \ $(INSTALLDIR) $(INSTALL_PREFIX)$(MANSRC)); \ for file in $(SCRIPTS); do \ if test -f $$file.man; then \ (set -x; \ $(INSTALL) -c -m 444 $$file.man \ - $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)); \ + $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)) || \ + exit 1; \ fi; \ done @@ -151,22 +154,20 @@ fixcpp: fixcpp.SH local_install:: - @case '${MFLAGS}' in *[i]*) set +e;; esac; \ for dir in $(PRIVLIB) $(PRIVLIB)/files; do \ - (set -x; test -d $(INSTALL_PREFIX)$$dir || \ + (set -x; test -d $(INSTALL_PREFIX)$$dir || \ $(INSTALLDIR) $(INSTALL_PREFIX)$$dir); \ done local_deinstall:: - @case '${MFLAGS}' in *[i]*) set +e;; esac; \ for dir in $(PRIVLIB) $(PRIVLIB)/files; do \ (set -x; test -d $$dir && $(RM) -r $(INSTALL_PREFIX)$$dir); \ done local_install:: Index - case '${MFLAGS}' in *[i]*) set +e;; esac; \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB) || \ $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)); \ $(INSTALL) -c -m 444 Index $(INSTALL_PREFIX)$(PRIVLIB) @@ -175,7 +176,7 @@ local_deinstall:: $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/Index local_install:: bindex - case '${MFLAGS}' in *[i]*) set +e;; esac; \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB) || \ $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)); \ $(INSTALL) -c -m 555 bindex $(INSTALL_PREFIX)$(PRIVLIB) @@ -184,7 +185,7 @@ local_deinstall:: $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/bindex local_install:: fixcpp - case '${MFLAGS}' in *[i]*) set +e;; esac; \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB)/files || \ $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)/files); \ $(INSTALL) -c -m 555 fixcpp $(INSTALL_PREFIX)$(PRIVLIB)/files @@ -193,11 +194,12 @@ local_deinstall:: $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/files/fixcpp local_install:: files/Jmake* - case '${MFLAGS}' in *[i]*) set +e;; esac; \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB)/files || \ $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)/files); \ for i in files/Jmake*; do \ - (set -x; $(INSTALL) -c -m 444 $$i $(INSTALL_PREFIX)$(PRIVLIB)/files); \ + (set -x; $(INSTALL) -c -m 444 \ + $$i $(INSTALL_PREFIX)$(PRIVLIB)/files) || exit 1;\ done local_deinstall:: @@ -220,24 +222,25 @@ depend:: ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: local_clean realclean: local_realclean clobber: local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh -install: local_install -install.man: maybe_install.man -deinstall: local_deinstall -deinstall.man: maybe_deinstall.man +install:: local_install +install.man:: maybe_install.man +deinstall:: local_deinstall +deinstall.man:: maybe_deinstall.man install.man-yes: local_install.man install.man-no: diff --git a/kit/Makefile.SH b/kit/Makefile.SH index bde4076..eacff2c 100755 --- a/kit/Makefile.SH +++ b/kit/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] -: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ case $CONFIG in '') @@ -22,6 +22,7 @@ DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` echo "Extracting ${DIR}Makefile (with variable substitutions)" INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` DATE=`date` $spitshell >Makefile <>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ - -######################################################################## -# Force 'make depend' to be performed first -- do not edit - -.FORCE_DEPEND:: - -all:: .FORCE_DEPEND +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.2 1994/04/22 09:35:35 ram Exp ram $ +# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -110,46 +104,58 @@ kitpost: kitpost.SH /bin/sh kitpost.SH -install:: $(SCRIPTS) $(LSCRIPTS) - @for file in $(SCRIPTS) $(LSCRIPTS); do \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - (set -x; $(INSTALL) -c -m 555 $$file $(SCRIPTDIR)); \ +local_install:: $(SCRIPTS) $(LSCRIPTS) + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + for file in $(SCRIPTS) $(LSCRIPTS); do \ + (set -x; \ + $(INSTALL) -c -m 555 $$file $(INSTALL_PREFIX)$(SCRIPTDIR)) || \ + exit 1; \ done -deinstall:: +local_deinstall:: @for file in $(SCRIPTS) $(LSCRIPTS); do \ case '${MFLAGS}' in *[i]*) set +e;; esac; \ - (set -x; $(RM) $(SCRIPTDIR)/$$file); \ + (set -x; $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/$$file); \ done -install.man:: - @if test "$(MANSRC)"; then \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - for file in $(SCRIPTS); do \ +local_install.man:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(MANSRC) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(MANSRC)); \ + for file in $(SCRIPTS); do \ + if test -f $$file.man; then \ (set -x; \ - $(INSTALL) -c -m 444 $$file.man $(MANSRC)/$$file.$(L)); \ - done; \ - else exit 0; fi + $(INSTALL) -c -m 444 $$file.man \ + $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)) || \ + exit 1; \ + fi; \ + done -deinstall.man:: - @if test "$(MANSRC)"; then \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - for file in $(SCRIPTS); do \ - (set -x; $(RM) $(MANSRC)/$$file.$(L)); \ - done; \ - else exit 0; fi +local_deinstall.man:: + case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(SCRIPTS); do \ + (set -x; $(RM) $(INSTALL_PREFIX)$(MANSRC)/$$file.$(L)); \ + done -install:: makeSH - $(INSTALL) -c -m 555 makeSH $(SCRIPTDIR) +local_install:: makeSH + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + $(INSTALL) -c -m 555 makeSH $(INSTALL_PREFIX)$(SCRIPTDIR) -deinstall:: - $(RM) $(SCRIPTDIR)/makeSH +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/makeSH -install.man:: makeSH.man - $(INSTALL) -c -m 444 makeSH.man $(MANSRC)/makeSH.$(L) +local_install.man:: makeSH.man + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(MANSRC) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(MANSRC)); \ + $(INSTALL) -c -m 444 makeSH.man $(INSTALL_PREFIX)$(MANSRC)/makeSH.$(L) -deinstall.man:: - $(RM) $(MANSRC)/makeSH.$(L) +local_deinstall.man:: + $(RM) $(INSTALL_PREFIX)$(MANSRC)/makeSH.$(L) SCRIPTSH = \ makedist.SH \ @@ -169,20 +175,42 @@ depend:: ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: local_clean realclean: local_realclean clobber: local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh +install:: local_install +install.man:: maybe_install.man +deinstall:: local_deinstall +deinstall.man:: maybe_deinstall.man + +install.man-yes: local_install.man +install.man-no: +deinstall.man-yes: local_deinstall.man +deinstall.man-no: + +!NO!SUBS! +case "$installmansrc" in +'') man=no;; +*) man=yes;; +esac +$spitshell >>Makefile <>Makefile <<'!NO!SUBS!' + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ if test -f Makefile.SH; then \ @@ -191,7 +219,7 @@ Makefile.SH: Jmakefile fi; \ echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -206,29 +234,22 @@ local_clobber:: ######################################################################## # Empty rules for directories with no sub-directories -- do not edit -install:: +local_install:: @echo "install in $(CURRENT) done." -deinstall:: +local_deinstall:: @echo "deinstall in $(CURRENT) done." -install.man:: +local_install.man:: @echo "install.man in $(CURRENT) done." -deinstall.man:: +local_deinstall.man:: @echo "deinstall.man in $(CURRENT) done." Makefiles:: Makefiles.SH:: -######################################################################## -# Dependencies generated by make depend -# DO NOT DELETE THIS LINE -- make depend relies on it - -# Put nothing here or make depend will gobble it up -.FORCE_DEPEND:: - @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/lib/C/Makefile.SH b/lib/C/Makefile.SH index 764aa48..f72cdfc 100755 --- a/lib/C/Makefile.SH +++ b/lib/C/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] -: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ case $CONFIG in '') @@ -37,7 +37,7 @@ DIR = $DIR # Parameters set by Configure -- edit config.sh if changes are needed CTAGS = ctags -MAKE = make +JCPPFLAGS = $cppflags MV = $mv RM = $rm -f @@ -50,15 +50,15 @@ SUBDIRS = fake $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:38 ram Exp ram $ +# $X-Id: Jmakefile 3 2006-08-25 21:39:07Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -73,20 +73,32 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: sub_clean local_clean realclean: sub_realclean local_realclean clobber: sub_clobber local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh +install:: local_install sub_install +install.man:: maybe_install.man sub_install.man +deinstall:: sub_deinstall local_deinstall +deinstall.man:: sub_deinstall.man maybe_deinstall.man + +install.man-no: +deinstall.man-no: + +maybe_install.man: install.man-no +maybe_deinstall.man: deinstall.man-no + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ if test -f Makefile.SH; then \ @@ -95,7 +107,7 @@ Makefile.SH: Jmakefile fi; \ echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -115,20 +127,22 @@ subdirs: for i in $(SUBDIRS) ;\ do \ (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)); \ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)) || exit 1; \ done -install:: +sub_install:: @$(MAKE) subdirs TARGET=install VERB="Installing" FLAGS= -deinstall:: +sub_deinstall:: @$(MAKE) subdirs TARGET=deinstall VERB="Deinstalling" FLAGS= + @echo "Back to $(CURRENT) for "deinstall... -install.man:: +sub_install.man:: @$(MAKE) subdirs TARGET=install.man VERB="Installing man pages" FLAGS= -deinstall.man:: +sub_deinstall.man:: @$(MAKE) subdirs TARGET=deinstall.man VERB="Deinstalling man pages" FLAGS= + @echo "Back to $(CURRENT) for "deinstall.man... sub_clean:: @$(MAKE) subdirs TARGET=clean VERB="Cleaning" FLAGS= @@ -147,7 +161,7 @@ tag:: for i in $(SUBDIRS) ;\ do \ (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) tag); \ + $(MAKE) $(MFLAGS) tag) || exit 1; \ done Makefiles:: @@ -157,7 +171,7 @@ Makefiles:: echo "Making "Makefiles" in $(DIR)$$i..."; \ (cd $$i || exit 1; \ if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ - $(MAKE) $(MFLAGS) Makefiles) \ + $(MAKE) $(MFLAGS) Makefiles) || exit 1;\ done Makefiles.SH:: Makefile.SH @@ -174,14 +188,23 @@ Makefiles.SH:: Makefile.SH /*) newtop="$(TOP)" ;; \ esac; \ echo "Making Makefiles.SH in $(DIR)$$i..."; \ - (cd $$i || exit 1; $(MAKE) $(MFLAGS) -f ../Makefile \ - Makefile TOP=$$newtop CURRENT=$(DIR)$$i;\ - $(MAKE) $(MFLAGS) Makefiles.SH) \ + (cd $$i || exit 1; \ + if test -f Jmakefile; then \ + $(MAKE) $(MFLAGS) -f ../Makefile \ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i && \ + $(MAKE) $(MFLAGS) Makefiles.SH; \ + fi; \ + ) || exit 1; \ done all:: @$(MAKE) subdirs TARGET=all VERB="Making all" FLAGS= +local_install:: +local_deinstall:: +local_install.man:: +local_deinstall.man:: + !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/lib/C/fake/Makefile.SH b/lib/C/fake/Makefile.SH index 6030d62..ad637ae 100755 --- a/lib/C/fake/Makefile.SH +++ b/lib/C/fake/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] -: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ case $CONFIG in '') @@ -41,7 +41,7 @@ INSTALLDIR = $INSTALLDIR # Parameters set by Configure -- edit config.sh if changes are needed CTAGS = ctags -MAKE = make +JCPPFLAGS = $cppflags MV = $mv PRIVLIB = $installprivlib RM = $rm -f @@ -50,15 +50,15 @@ RM = $rm -f $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:44 ram Exp ram $ +# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -77,40 +77,56 @@ INSTALLFLAGS = -m 444 all:: install:: - @for dir in $(PRIVLIB)/lib/C/fake; do \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - (set -x; test -d $$dir || $(INSTALLDIR) $$dir); \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for dir in $(PRIVLIB)/lib/C/fake; do \ + (set -x; test -d $$dir || $(INSTALLDIR) $$dir) || \ + exit 1; \ done -install:: $(FILES) - @case '${MFLAGS}' in *[i]*) set +e;; esac; \ +local_install:: $(FILES) + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB)/lib/C/fake || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)/lib/C/fake); \ for i in $(FILES); do \ - (set -x; $(INSTALL) -c $(INSTALLFLAGS) $$i $(PRIVLIB)/lib/C/fake); \ + (set -x; $(INSTALL) -c $(INSTALLFLAGS) \ + $$i $(INSTALL_PREFIX)$(PRIVLIB)/lib/C/fake) || exit 1;\ done -deinstall:: +local_deinstall:: @case '${MFLAGS}' in *[i]*) set +e;; esac; \ for i in $(FILES); do \ - (set -x; $(RM) $(PRIVLIB)/lib/C/fake/$$i); \ + (set -x; $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/lib/C/fake/$$i); \ done ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: local_clean realclean: local_realclean clobber: local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh +install:: local_install +install.man:: maybe_install.man +deinstall:: local_deinstall +deinstall.man:: maybe_deinstall.man + +install.man-no: +deinstall.man-no: + +maybe_install.man: install.man-no +maybe_deinstall.man: deinstall.man-no + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ if test -f Makefile.SH; then \ @@ -119,7 +135,7 @@ Makefile.SH: Jmakefile fi; \ echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -134,16 +150,16 @@ local_clobber:: ######################################################################## # Empty rules for directories with no sub-directories -- do not edit -install:: +local_install:: @echo "install in $(CURRENT) done." -deinstall:: +local_deinstall:: @echo "deinstall in $(CURRENT) done." -install.man:: +local_install.man:: @echo "install.man in $(CURRENT) done." -deinstall.man:: +local_deinstall.man:: @echo "deinstall.man in $(CURRENT) done." Makefiles:: diff --git a/lib/Makefile.SH b/lib/Makefile.SH index 02e4528..9988b2f 100755 --- a/lib/Makefile.SH +++ b/lib/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] -: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ case $CONFIG in '') @@ -41,7 +41,7 @@ INSTALLDIR = $INSTALLDIR # Parameters set by Configure -- edit config.sh if changes are needed CTAGS = ctags -MAKE = make +JCPPFLAGS = $cppflags MV = $mv PRIVLIB = $installprivlib RM = $rm -f @@ -55,15 +55,15 @@ SUBDIRS = C $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.1 1994/01/24 13:43:31 ram Exp ram $ +# $X-Id: Jmakefile 5 2006-08-25 22:09:39Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -86,21 +86,25 @@ INSTALLFLAGS = -m 444 all:: install:: - @for dir in $(PRIVLIB)/lib; do \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - (set -x; test -d $$dir || $(INSTALLDIR) $$dir); \ + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for dir in $(PRIVLIB)/lib; do \ + (set -x; test -d $$dir || $(INSTALLDIR) $$dir) || \ + exit 1; \ done -install:: $(FILES) - @case '${MFLAGS}' in *[i]*) set +e;; esac; \ +local_install:: $(FILES) + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB)/lib || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)/lib); \ for i in $(FILES); do \ - (set -x; $(INSTALL) -c $(INSTALLFLAGS) $$i $(PRIVLIB)/lib); \ + (set -x; $(INSTALL) -c $(INSTALLFLAGS) \ + $$i $(INSTALL_PREFIX)$(PRIVLIB)/lib) || exit 1;\ done -deinstall:: +local_deinstall:: @case '${MFLAGS}' in *[i]*) set +e;; esac; \ for i in $(FILES); do \ - (set -x; $(RM) $(PRIVLIB)/lib/$$i); \ + (set -x; $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/lib/$$i); \ done @@ -131,20 +135,32 @@ deinstall:: ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: sub_clean local_clean realclean: sub_realclean local_realclean clobber: sub_clobber local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh +install:: local_install sub_install +install.man:: maybe_install.man sub_install.man +deinstall:: sub_deinstall local_deinstall +deinstall.man:: sub_deinstall.man maybe_deinstall.man + +install.man-no: +deinstall.man-no: + +maybe_install.man: install.man-no +maybe_deinstall.man: deinstall.man-no + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ if test -f Makefile.SH; then \ @@ -153,7 +169,7 @@ Makefile.SH: Jmakefile fi; \ echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -173,20 +189,22 @@ subdirs: for i in $(SUBDIRS) ;\ do \ (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)); \ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)) || exit 1; \ done -install:: +sub_install:: @$(MAKE) subdirs TARGET=install VERB="Installing" FLAGS= -deinstall:: +sub_deinstall:: @$(MAKE) subdirs TARGET=deinstall VERB="Deinstalling" FLAGS= + @echo "Back to $(CURRENT) for "deinstall... -install.man:: +sub_install.man:: @$(MAKE) subdirs TARGET=install.man VERB="Installing man pages" FLAGS= -deinstall.man:: +sub_deinstall.man:: @$(MAKE) subdirs TARGET=deinstall.man VERB="Deinstalling man pages" FLAGS= + @echo "Back to $(CURRENT) for "deinstall.man... sub_clean:: @$(MAKE) subdirs TARGET=clean VERB="Cleaning" FLAGS= @@ -205,7 +223,7 @@ tag:: for i in $(SUBDIRS) ;\ do \ (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) tag); \ + $(MAKE) $(MFLAGS) tag) || exit 1; \ done Makefiles:: @@ -215,7 +233,7 @@ Makefiles:: echo "Making "Makefiles" in $(DIR)$$i..."; \ (cd $$i || exit 1; \ if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ - $(MAKE) $(MFLAGS) Makefiles) \ + $(MAKE) $(MFLAGS) Makefiles) || exit 1;\ done Makefiles.SH:: Makefile.SH @@ -232,14 +250,23 @@ Makefiles.SH:: Makefile.SH /*) newtop="$(TOP)" ;; \ esac; \ echo "Making Makefiles.SH in $(DIR)$$i..."; \ - (cd $$i || exit 1; $(MAKE) $(MFLAGS) -f ../Makefile \ - Makefile TOP=$$newtop CURRENT=$(DIR)$$i;\ - $(MAKE) $(MFLAGS) Makefiles.SH) \ + (cd $$i || exit 1; \ + if test -f Jmakefile; then \ + $(MAKE) $(MFLAGS) -f ../Makefile \ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i && \ + $(MAKE) $(MFLAGS) Makefiles.SH; \ + fi; \ + ) || exit 1; \ done all:: @$(MAKE) subdirs TARGET=all VERB="Making all" FLAGS= +local_install:: +local_deinstall:: +local_install.man:: +local_deinstall.man:: + !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH index cf4798e..c27f901 100755 --- a/mcon/Makefile.SH +++ b/mcon/Makefile.SH @@ -1,5 +1,6 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL55] -: $X-Id: Jmake.tmpl,v 3.0.1.2 1995/01/11 14:50:21 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ + case $CONFIG in '') if test -f config.sh; then TOP=.; @@ -40,8 +41,7 @@ INSTALLDIR = $INSTALLDIR # Parameters set by Configure -- edit config.sh if changes are needed CTAGS = ctags -MAKE = make -MKDEP = $mkdep \$(DPFLAGS) -- +JCPPFLAGS = $cppflags MV = $mv PRIVLIB = $installprivlib RM = $rm -f @@ -58,21 +58,15 @@ BIN = metaconfig metalint metaxref $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.3 1995/03/21 08:35:28 ram Exp ram $ -######################################################################## -# Force 'make depend' to be performed first -- do not edit - -.FORCE_DEPEND:: - -all:: .FORCE_DEPEND +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.4 1995/07/25 13:23:09 ram Exp ram $ +# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -114,55 +108,74 @@ makegloss: makegloss.SH /bin/sh makegloss.SH -install:: - @for dir in $(PRIVLIB) $(PRIVLIB)/U; do \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - (set -x; test -d $$dir || $(INSTALLDIR) $$dir); \ +local_install:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for dir in $(PRIVLIB) $(PRIVLIB)/U; do \ + (set -x; test -d $(INSTALL_PREFIX)$$dir || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$$dir); \ done -deinstall:: - $(RM) -r $(PRIVLIB) $(PRIVLIB)/U - -install:: Glossary - $(INSTALL) -c -m 444 Glossary $(PRIVLIB) - -deinstall:: - $(RM) $(PRIVLIB)/Glossary - -install:: makegloss - $(INSTALL) -c -m 555 makegloss $(PRIVLIB) - -deinstall:: - $(RM) $(PRIVLIB)/makegloss - -install:: configure - $(INSTALL) -c -m 555 configure $(PRIVLIB) - -deinstall:: - $(RM) $(PRIVLIB)/configure - -install:: U/[a-d]*.U +local_deinstall:: @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for dir in $(PRIVLIB) $(PRIVLIB)/U; do \ + (set -x; test -d $$dir && $(RM) -r $(INSTALL_PREFIX)$$dir); \ + done + +local_install:: Glossary + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)); \ + $(INSTALL) -c -m 444 Glossary $(INSTALL_PREFIX)$(PRIVLIB) + +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/Glossary + +local_install:: makegloss + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)); \ + $(INSTALL) -c -m 555 makegloss $(INSTALL_PREFIX)$(PRIVLIB) + +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/makegloss + +local_install:: configure + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)); \ + $(INSTALL) -c -m 555 configure $(INSTALL_PREFIX)$(PRIVLIB) + +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/configure + +local_install:: U/[a-d]*.U + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB)/U || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)/U); \ for i in U/[a-d]*.U; do \ - (set -x; $(INSTALL) -c -m 444 $$i $(PRIVLIB)/U); \ + (set -x; $(INSTALL) -c -m 444 \ + $$i $(INSTALL_PREFIX)$(PRIVLIB)/U) || exit 1;\ done -deinstall:: +local_deinstall:: @case '${MFLAGS}' in *[i]*) set +e;; esac; \ for i in U/[a-d]*.U; do \ - (set -x; $(RM) $(PRIVLIB)/U/$$i); \ + (set -x; $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/U/$$i); \ done -install:: U/[A-Ze-z]*.U - @case '${MFLAGS}' in *[i]*) set +e;; esac; \ +local_install:: U/[A-Ze-z]*.U + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(PRIVLIB)/U || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(PRIVLIB)/U); \ for i in U/[A-Ze-z]*.U; do \ - (set -x; $(INSTALL) -c -m 444 $$i $(PRIVLIB)/U); \ + (set -x; $(INSTALL) -c -m 444 \ + $$i $(INSTALL_PREFIX)$(PRIVLIB)/U) || exit 1;\ done -deinstall:: +local_deinstall:: @case '${MFLAGS}' in *[i]*) set +e;; esac; \ for i in U/[A-Ze-z]*.U; do \ - (set -x; $(RM) $(PRIVLIB)/U/$$i); \ + (set -x; $(RM) $(INSTALL_PREFIX)$(PRIVLIB)/U/$$i); \ done all:: metaconfig mconfig @@ -182,11 +195,14 @@ metaconfig: mconfig perl $(TOP)/bin/perload -o mconfig > $@ chmod +rx $@ -install:: metaconfig - $(INSTALL) -c -m 555 metaconfig $(SCRIPTDIR) +local_install:: metaconfig + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + $(INSTALL) -c -m 555 metaconfig $(INSTALL_PREFIX)$(SCRIPTDIR) -deinstall:: - $(RM) $(SCRIPTDIR)/metaconfig +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/metaconfig all:: metalint mlint @@ -205,11 +221,14 @@ metalint: mlint perl $(TOP)/bin/perload -o mlint > $@ chmod +rx $@ -install:: metalint - $(INSTALL) -c -m 555 metalint $(SCRIPTDIR) +local_install:: metalint + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + $(INSTALL) -c -m 555 metalint $(INSTALL_PREFIX)$(SCRIPTDIR) -deinstall:: - $(RM) $(SCRIPTDIR)/metalint +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/metalint all:: metaxref mxref @@ -228,11 +247,14 @@ metaxref: mxref perl $(TOP)/bin/perload -o mxref > $@ chmod +rx $@ -install:: metaxref - $(INSTALL) -c -m 555 metaxref $(SCRIPTDIR) +local_install:: metaxref + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ + $(INSTALL) -c -m 555 metaxref $(INSTALL_PREFIX)$(SCRIPTDIR) -deinstall:: - $(RM) $(SCRIPTDIR)/metaxref +local_deinstall:: + $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/metaxref BINFILES = \ mconfig \ @@ -256,29 +278,41 @@ depend:: ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: sub_clean local_clean realclean: sub_realclean local_realclean clobber: sub_clobber local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh +install:: local_install sub_install +install.man:: maybe_install.man sub_install.man +deinstall:: sub_deinstall local_deinstall +deinstall.man:: sub_deinstall.man maybe_deinstall.man + +install.man-no: +deinstall.man-no: + +maybe_install.man: install.man-no +maybe_deinstall.man: deinstall.man-no + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ - if test -f Makefile.SH; then \ - echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ - $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ - fi; \ - echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ - $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -297,21 +331,23 @@ subdirs: @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS) ;\ do \ - (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)); \ + (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)) || exit 1; \ done -install:: +sub_install:: @$(MAKE) subdirs TARGET=install VERB="Installing" FLAGS= -deinstall:: +sub_deinstall:: @$(MAKE) subdirs TARGET=deinstall VERB="Deinstalling" FLAGS= + @echo "Back to $(CURRENT) for "deinstall... -install.man:: +sub_install.man:: @$(MAKE) subdirs TARGET=install.man VERB="Installing man pages" FLAGS= -deinstall.man:: +sub_deinstall.man:: @$(MAKE) subdirs TARGET=deinstall.man VERB="Deinstalling man pages" FLAGS= + @echo "Back to $(CURRENT) for "deinstall.man... sub_clean:: @$(MAKE) subdirs TARGET=clean VERB="Cleaning" FLAGS= @@ -329,49 +365,51 @@ tag:: @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS) ;\ do \ - (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ - $(MAKE) $(MFLAGS) tag); \ + (cd $$i ; echo "Tagging" "in $(DIR)$$i..."; \ + $(MAKE) $(MFLAGS) tag) || exit 1; \ done Makefiles:: @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS);\ do \ - echo "Making "Makefiles" in $(DIR)$$i..."; \ - (cd $$i || exit 1; \ - if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ - $(MAKE) $(MFLAGS) Makefiles) \ + echo "Making "Makefiles" in $(DIR)$$i..."; \ + (cd $$i || exit 1; \ + if test ! -f Makefile; then /bin/sh Makefile.SH; fi; \ + $(MAKE) $(MFLAGS) Makefiles) || exit 1;\ done Makefiles.SH:: Makefile.SH @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS);\ do \ - case "$(DIR)$$i/" in \ - */*/*/*/) newtop=../../../..;; \ - */*/*/) newtop=../../..;; \ - */*/) newtop=../..;; \ - */) newtop=..;; \ - esac; \ - case "$(TOP)" in \ - /*) newtop="$(TOP)" ;; \ - esac; \ - echo "Making Makefiles.SH in $(DIR)$$i..."; \ - (cd $$i || exit 1; $(MAKE) $(MFLAGS) -f ../Makefile \ - Makefile TOP=$$newtop CURRENT=$(DIR)$$i;\ - $(MAKE) $(MFLAGS) Makefiles.SH) \ + case "$(DIR)$$i/" in \ + */*/*/*/) newtop=../../../..;; \ + */*/*/) newtop=../../..;; \ + */*/) newtop=../..;; \ + */) newtop=..;; \ + esac; \ + case "$(TOP)" in \ + /*) newtop="$(TOP)" ;; \ + esac; \ + echo "Making Makefiles.SH in $(DIR)$$i..."; \ + (cd $$i || exit 1; \ + if test -f Jmakefile; then \ + $(MAKE) $(MFLAGS) -f ../Makefile \ + Makefile TOP=$$newtop CURRENT=$(DIR)$$i && \ + $(MAKE) $(MFLAGS) Makefiles.SH; \ + fi; \ + ) || exit 1; \ done all:: @$(MAKE) subdirs TARGET=all VERB="Making all" FLAGS= -######################################################################## -# Dependencies generated by make depend -# DO NOT DELETE THIS LINE -- make depend relies on it +local_install:: +local_deinstall:: +local_install.man:: +local_deinstall.man:: -# Put nothing here or make depend will gobble it up -.FORCE_DEPEND:: - @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/mcon/man/Makefile.SH b/mcon/man/Makefile.SH index f146784..94e186c 100755 --- a/mcon/man/Makefile.SH +++ b/mcon/man/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL44] -: $X-Id: Jmake.tmpl,v 3.0.1.1 1993/08/20 07:36:36 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ case $CONFIG in '') @@ -22,6 +22,7 @@ DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` echo "Extracting ${DIR}Makefile (with variable substitutions)" INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` DATE=`date` $spitshell >Makefile <>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.1 1994/10/29 15:46:30 ram Exp ram $ +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0 1993/08/18 12:10:13 ram Exp ram $ +# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -89,39 +91,60 @@ all:: $(MPAGES) local_realclean:: $(RM) $(MPAGES) -install.man:: - @if test "$(MANSRC)"; then \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - for file in $(MPAGES); do \ - (set -x; $(INSTALL) -c -m 444 $$file $(MANSRC)); \ - done; \ - else exit 0; fi - -deinstall.man:: - @if test "$(MANSRC)"; then \ - case '${MFLAGS}' in *[i]*) set +e;; esac; \ - for file in $(MPAGES); do \ - (set -x; $(RM) $(MANSRC)/$$file); \ - done; \ - else exit 0; fi +local_install.man:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(MANSRC) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(MANSRC)); \ + for file in $(MPAGES); do \ + (set -x; $(INSTALL) -c -m 444 $$file \ + $(INSTALL_PREFIX)$(MANSRC)) || exit 1; \ + done + +local_deinstall.man:: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + for file in $(MPAGES); do \ + (set -x; $(RM) $(INSTALL_PREFIX)$(MANSRC)/$$file); \ + done ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: local_clean realclean: local_realclean clobber: local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh +install:: local_install +install.man:: maybe_install.man +deinstall:: local_deinstall +deinstall.man:: maybe_deinstall.man + +install.man-yes: local_install.man +install.man-no: +deinstall.man-yes: local_deinstall.man +deinstall.man-no: + +!NO!SUBS! +case "$installmansrc" in +'') man=no;; +*) man=yes;; +esac +$spitshell >>Makefile <>Makefile <<'!NO!SUBS!' + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ if test -f Makefile.SH; then \ @@ -130,7 +153,7 @@ Makefile.SH: Jmakefile fi; \ echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -145,16 +168,16 @@ local_clobber:: ######################################################################## # Empty rules for directories with no sub-directories -- do not edit -install:: +local_install:: @echo "install in $(CURRENT) done." -deinstall:: +local_deinstall:: @echo "deinstall in $(CURRENT) done." -install.man:: +local_install.man:: @echo "install.man in $(CURRENT) done." -deinstall.man:: +local_deinstall.man:: @echo "deinstall.man in $(CURRENT) done." Makefiles:: diff --git a/pat/Makefile.SH b/pat/Makefile.SH index 8424f98..d6a7a10 100755 --- a/pat/Makefile.SH +++ b/pat/Makefile.SH @@ -1,5 +1,6 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.0 PL55] -: $X-Id: Jmake.tmpl,v 3.0.1.2 1995/01/11 14:50:21 ram Exp ram $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ + case $CONFIG in '') if test -f config.sh; then TOP=.; @@ -21,6 +22,7 @@ DIR=`echo $CURRENT/ | sed -e 's/\.\///g'` echo "Extracting ${DIR}Makefile (with variable substitutions)" INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'` +INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'` DATE=`date` $spitshell >Makefile <>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules,v 3.0.1.3 1995/03/21 08:35:28 ram Exp ram $ -######################################################################## -# Force 'make depend' to be performed first -- do not edit - -.FORCE_DEPEND:: - -all:: .FORCE_DEPEND +# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile,v 3.0.1.3 1995/07/24 09:57:21 ram Exp ram $ +# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -# +# # You may redistribute only under the terms of the Artistic Licence, # as specified in the README file that comes with the distribution. # You may reuse parts of this distribution only within the terms of @@ -157,23 +153,29 @@ patlog: patlog.SH /bin/sh patlog.SH -install:: $(PAT) - @case '${MFLAGS}' in *[i]*) set +e;; esac; \ +local_install:: $(PAT) + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(SCRIPTDIR) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(SCRIPTDIR)); \ for i in $(PAT); do \ - (set -x; $(INSTALL) -c -m 555 $$i $(SCRIPTDIR)); \ + (set -x; $(INSTALL) -c -m 555 \ + $$i $(INSTALL_PREFIX)$(SCRIPTDIR)) || exit 1;\ done -deinstall:: +local_deinstall:: @case '${MFLAGS}' in *[i]*) set +e;; esac; \ for i in $(PAT); do \ - (set -x; $(RM) $(SCRIPTDIR)/$$i); \ + (set -x; $(RM) $(INSTALL_PREFIX)$(SCRIPTDIR)/$$i); \ done -install.man:: pat.man - $(INSTALL) -c -m 444 pat.man $(MANSRC)/pat.$(L) +local_install.man:: pat.man + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ + (set -x; test -d $(INSTALL_PREFIX)$(MANSRC) || \ + $(INSTALLDIR) $(INSTALL_PREFIX)$(MANSRC)); \ + $(INSTALL) -c -m 444 pat.man $(INSTALL_PREFIX)$(MANSRC)/pat.$(L) -deinstall.man:: - $(RM) $(MANSRC)/pat.$(L) +local_deinstall.man:: + $(RM) $(INSTALL_PREFIX)$(MANSRC)/pat.$(L) PATSH = \ pat.SH \ @@ -204,29 +206,51 @@ depend:: ######################################################################## # Common rules for all Makefiles -- do not edit -emptyrule:: +all:: clean: local_clean realclean: local_realclean clobber: local_clobber local_clean:: - $(RM) core *~ *.o + if test -f core; then $(RM) core; fi + $(RM) *~ *.o local_realclean:: local_clean local_clobber:: local_realclean $(RM) Makefile config.sh +install:: local_install +install.man:: maybe_install.man +deinstall:: local_deinstall +deinstall.man:: maybe_deinstall.man + +install.man-yes: local_install.man +install.man-no: +deinstall.man-yes: local_deinstall.man +deinstall.man-no: + +!NO!SUBS! +case "$installmansrc" in +'') man=no;; +*) man=yes;; +esac +$spitshell >>Makefile <>Makefile <<'!NO!SUBS!' + Makefile.SH: Jmakefile -@if test -f $(TOP)/.package; then \ - if test -f Makefile.SH; then \ - echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ - $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ - fi; \ - echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ - $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ - else touch $@; exit 0; fi + if test -f Makefile.SH; then \ + echo " $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~"; \ + $(RM) Makefile.SH~; $(MV) Makefile.SH Makefile.SH~; \ + fi; \ + echo " $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT)" ; \ + $(JMAKE) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT) ; \ + else touch $@; fi Makefile: Makefile.SH /bin/sh Makefile.SH @@ -241,28 +265,22 @@ local_clobber:: ######################################################################## # Empty rules for directories with no sub-directories -- do not edit -install:: +local_install:: @echo "install in $(CURRENT) done." -deinstall:: +local_deinstall:: @echo "deinstall in $(CURRENT) done." -install.man:: +local_install.man:: @echo "install.man in $(CURRENT) done." -deinstall.man:: +local_deinstall.man:: @echo "deinstall.man in $(CURRENT) done." + Makefiles:: Makefiles.SH:: -######################################################################## -# Dependencies generated by make depend -# DO NOT DELETE THIS LINE -- make depend relies on it - -# Put nothing here or make depend will gobble it up -.FORCE_DEPEND:: - @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile -- cgit v1.2.3 From 0dac0f1e19c3f7dbc7ae8167f5d4041c5e07bd09 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Aug 2006 22:35:20 +0000 Subject: This starts the dist-3.5 baseline. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@11 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 1712 +++++++++++++++++++++++++++++++++++++++++----------------- patchlevel.h | 5 +- 2 files changed, 1232 insertions(+), 485 deletions(-) diff --git a/Configure b/Configure index e8906f2..fc94aef 100755 --- a/Configure +++ b/Configure @@ -13,12 +13,12 @@ # # Note: this Configure script was generated automatically. Rather than # working with this copy of Configure, you may wish to get metaconfig. -# The dist package (which contains metaconfig) is available at -# http://sourceforge.net/projects/dist/ +# The dist package (which contains metaconfig) is available via SVN: +# svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist -# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp ram $ +# $Id: Head.U 6 2006-08-25 22:21:46Z rmanfredi $ # -# Generated on Sun Feb 8 21:03:36 MET 2004 [metaconfig 3.0 PL70] +# Generated on Sat Aug 26 00:34:34 MEST 2006 [metaconfig 3.5 PL0] cat >c1$$ <&2 +'') cat >&2 </dev/null 2>&1`; then exit 1 fi fi - echo "#!$xcat" >try - $eunicefix try - chmod +x try - ./try > today 2>/dev/null + echo "#!$xcat" >sharp + $eunicefix sharp + chmod +x sharp + ./sharp > today 2>/dev/null if test -s today; then sharpbang='#!' else - echo "#! $xcat" > try - $eunicefix try - chmod +x try - ./try > today 2>/dev/null + echo "#! $xcat" > sharp + $eunicefix sharp + chmod +x sharp + ./sharp > today 2>/dev/null if test -s today; then sharpbang='#! ' else @@ -454,33 +499,33 @@ else echo "I presume that if # doesn't work, #! won't work either!" sharpbang=': use ' fi -rm -f try today +rm -f sharp today : figure out how to guarantee sh startup case "$startsh" in '') startsh=${sharpbang}${sh} ;; *) esac -cat >try <sharp < cmdline.opt <>cmdline.opt < cmdl.opt $arg EOC @@ -501,8 +545,6 @@ EOC argn=`expr $argn + 1` args_sep=' ' done -# args_exp is good for restarting self: eval "set X $args_exp"; shift; $0 "$@" -# used by ./hints/os2.sh rm -f cmdl.opt : produce awk script to parse command line options @@ -672,7 +714,7 @@ while test $# -gt 0; do esac shift ;; - -V) echo "$me generated by metaconfig 3.0 PL70." >&2 + -V) echo "$me generated by metaconfig 3.5 PL0." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -745,7 +787,7 @@ touch optdef.sh touch posthint.sh : set package name -package=dist +package='dist' first=`echo $package | sed -e 's/^\(.\).*/\1/'` last=`echo $package | sed -e 's/^.\(.*\)/\1/'` case "`echo AbyZ | tr '[:lower:]' '[:upper:]' 2>/dev/null`" in @@ -753,6 +795,29 @@ ABYZ) spackage=`echo $first | tr '[:lower:]' '[:upper:]'`$last;; *) spackage=`echo $first | tr '[a-z]' '[A-Z]'`$last;; esac +: script used to emulate mkdir -p +cat >mkdirp <>mkdirp <<'EOS' +name=$1; +create=""; +while test $name; do + if test ! -d "$name"; then + create="$name $create" + name=`echo $name | sed -e "s|^[^/]*$||"` + name=`echo $name | sed -e "s|\(.*\)/.*|\1|"` + else + name="" + fi +done +for file in $create; do + mkdir $file +done +EOS +chmod +x mkdirp +$eunicefix mkdirp + : Some greps do not return status, grrr. echo "grimblepritz" >grimble if grep blurfldyick grimble >/dev/null 2>&1 ; then @@ -777,19 +842,21 @@ esac : Find the path to the source tree case "$src" in '') case "$0" in - */*) src=`echo $0 | sed -e 's%/[^/][^/]*$%%'`;; - *) src='.';; + */*) + src=`echo $0 | sed -e 's%/[^/][^/]*$%%'` + ;; + *) src='.';; esac;; esac case "$src" in '') src=/ rsrc=/ ;; -/*) rsrc="$src";; -*) rsrc="../$src";; +/*) rsrc="$src";; +*) rsrc="../$src";; esac if test -f $rsrc/Configure && \ - $contains "^package=$package$" $rsrc/Configure >/dev/null 2>&1 + $contains "^package='$package'\$" $rsrc/Configure >/dev/null 2>&1 then : found it, so we are ok. else @@ -840,22 +907,6 @@ esac if test ! -f "$SRC/$1"; then shift fi -mkdir_p=' -name=$1; -create=""; -while test $name; do - if test ! -d "$name"; then - create="$name $create"; - name=`echo $name | sed -e "s|^[^/]*$||"`; - name=`echo $name | sed -e "s|\(.*\)/.*|\1|"`; - else - name=""; - fi; -done; -for file in $create; do - mkdir $file; -done -' for file in $*; do case "$SRC" in ".") @@ -875,7 +926,7 @@ for file in $*; do */*) dir=`expr X$file : 'X\(.*\)/'` file=`expr X$file : 'X.*/\(.*\)'` - (set x $dir; shift; eval $mkdir_p) + ./mkdirp $dir sh <"$SRC/$dir/$file" ;; *) @@ -887,8 +938,7 @@ for file in $*; do done if test -f "$SRC/config_h.SH"; then if test ! -f config.h; then - : oops, they left it out of MANIFEST, probably, so do it anyway. - . "$SRC/config_h.SH" + sh <"$SRC/config_h.SH" fi fi EOS @@ -1185,7 +1235,7 @@ If you are in a hurry, you may run 'Configure -d'. This will bypass nearly all the questions and use the computed defaults (or the previous answers if there was already a config.sh file). Type 'Configure -h' for a list of options. You may also start interactively and then answer '& -d' at any prompt to turn -on the non-interactive behaviour for the remaining of the execution. +on the non-interactive behaviour for the remainder of the execution. EOH . ./myread @@ -1224,7 +1274,6 @@ if test \$# -gt 0; then else cat >msg fi -echo " " echo "*** WARNING:" >&4 sed -e 's/^/*** /' &4 echo "*** " >&4 @@ -1302,6 +1351,7 @@ tr uniq " trylist=" +Mcc cpp date inews @@ -1476,6 +1526,8 @@ case "$cc" in *) $rm -f try try.* $cat >try.c <&4 <checktmp 2>/dev/null + if $contains ccflags checktmp >/dev/null; then + ./warn <try.c < /dev/null 2>&1 ; then +$rm -f sym +if $ln -s blurfl sym > /dev/null 2>&1 && $test -f sym; then echo "Symbolic links are supported." >&4 lns="$ln -s" else @@ -1628,9 +1681,16 @@ case "$lns" in ;; esac +: define absolute package source directory +case "$src" in +/*) pkgsrc=$src;; +*) pkgsrc=`cd $rsrc; pwd`;; +esac + : Duplicate the tree with symbolic links if -Dmksymlinks was supplied case "$mksymlinks" in $define|true|[yY]*) + echo " " case "$src" in ''|'.') echo "Cannot create symlinks in the original directory." >&4 exit 1 @@ -1643,16 +1703,17 @@ $define|true|[yY]*) awk '{print $1}' $src/MANIFEST | grep / | sed 's:/[^/]*$::' | \ sort -u | while true do - read directory - test -z "$directory" && break - if mkdir -p $directory 2>/dev/null && test -d $directory; then + read dir + test -z "$dir" && break + ./UU/mkdirp $dir 2>/dev/null + if test -d $dir; then : ok else - echo "Failed to create '$directory'. Aborting." >&4 + echo "Failed to create '$dir'. Aborting." >&4 exit 1 fi done - echo "(Then creating the symlinks...)" >&4 + echo "(Now creating the symlinks...)" >&4 awk '{print $1}' $src/MANIFEST | while true; do read filename test -z "$filename" && break @@ -1664,7 +1725,7 @@ $define|true|[yY]*) if test -f $filename; then echo "$filename already exists, not symlinking." else - ln -s $src/$filename $filename + ln -s $pkgsrc/$filename $filename fi done echo "(Checking current directory...)" >&4 @@ -1678,7 +1739,6 @@ $define|true|[yY]*) >/dev/null 2>>"$tmppwd/missing") done if test -s missing; then - cat missing >&4 echo "Failed duplication of source tree. Aborting." >&4 exit 1 fi @@ -1691,22 +1751,9 @@ $define|true|[yY]*) ;; esac -: setup for possible cross-compilation -run='' -to=: -from=: -usecrosscompile='undef' -targetarch='' -case "$usecrosscompile" in -$define|true|[yY]*) - echo "Cross-compilation is not supported for this package." >&4 - exit 1 - ;; -esac - : see whether [:lower:] and [:upper:] are supported character classes echo " " -case "`echo AbyZ | $tr '[:lower:]' '[:upper:]' 2>/dev/null`" in +case "`echo AbyZ | LC_ALL=C $tr '[:lower:]' '[:upper:]' 2>/dev/null`" in ABYZ) echo "Good, your tr supports [:lower:] and [:upper:] to convert case." >&4 up='[:upper:]' @@ -1715,14 +1762,14 @@ ABYZ) *) # There is a discontinuity in EBCDIC between 'I' and 'J' # (0xc9 and 0xd1), therefore that is a nice testing point. if test "X$up" = X -o "X$low" = X; then - case "`echo IJ | $tr '[I-J]' '[i-j]' 2>/dev/null`" in + case "`echo IJ | LC_ALL=C $tr '[I-J]' '[i-j]' 2>/dev/null`" in ij) up='[A-Z]' low='[a-z]' ;; esac fi if test "X$up" = X -o "X$low" = X; then - case "`echo IJ | $tr I-J i-j 2>/dev/null`" in + case "`echo IJ | LC_ALL=C $tr I-J i-j 2>/dev/null`" in ij) up='A-Z' low='a-z' ;; @@ -1733,14 +1780,15 @@ ABYZ) *C9D1*|*c9d1*) echo "Hey, this might be EBCDIC." >&4 if test "X$up" = X -o "X$low" = X; then - case "`echo IJ | $tr '[A-IJ-RS-Z]' '[a-ij-rs-z]' 2>/dev/null`" in + case "`echo IJ | \ + LC_ALL=C $tr '[A-IJ-RS-Z]' '[a-ij-rs-z]' 2>/dev/null`" in ij) up='[A-IJ-RS-Z]' low='[a-ij-rs-z]' ;; esac fi if test "X$up" = X -o "X$low" = X; then - case "`echo IJ | $tr A-IJ-RS-Z a-ij-rs-z 2>/dev/null`" in + case "`echo IJ | LC_ALL=C $tr A-IJ-RS-Z a-ij-rs-z 2>/dev/null`" in ij) up='A-IJ-RS-Z' low='a-ij-rs-z' ;; @@ -1750,7 +1798,7 @@ ABYZ) esac fi esac -case "`echo IJ | $tr \"$up\" \"$low\" 2>/dev/null`" in +case "`echo IJ | LC_ALL=C $tr \"$up\" \"$low\" 2>/dev/null`" in ij) echo "Using $up and $low to convert case." >&4 ;; @@ -1764,28 +1812,309 @@ esac cat >tr <&4 + exit 1 + ;; +esac + +: Determine the name of the machine myuname=`$uname -a 2>/dev/null` $test -z "$myuname" && myuname=`hostname 2>/dev/null` myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \ ./tr '[A-Z]' '[a-z]' | $tr $trnl ' '` newmyuname="$myuname" +$test -f "$uname$_exe" && has_uname=y + +: Guessing of the OS name -- half the following guesses are probably wrong... +: If you have better tests or hints, please send them to the metaconfig +: authors and to Raphael_Manfredi@grenoble.hp.com +$test -f /irix && osname=irix +$test -f /xenix && osname=sco_xenix +$test -f /dynix && osname=dynix +$test -f /dnix && osname=dnix +$test -f /lynx.os && osname=lynxos +$test -f /unicos && osname=unicos && osvers=`$uname -r` +$test -f /unicosmk && osname=unicosmk && osvers=`$uname -r` +$test -f /unicosmk.ar && osname=unicosmk && osvers=`$uname -r` +$test -f /bin/mips && /bin/mips && osname=mips +$test -d /NextApps && set X `hostinfo | $grep 'NeXT Mach.*:' | \ + $sed -e 's/://' -e 's/\./_/'` && osname=next && osvers=$4 +$test -d /usr/apollo/bin && osname=apollo +$test -f /etc/saf/_sactab && osname=svr4 +$test -d /usr/include/minix && osname=minix +$test -f /system/gnu_library/bin/ar.pm && osname=vos +if $test -d /MachTen -o -d /MachTen_Folder; then + osname=machten + if $test -x /sbin/version; then + osvers=`/sbin/version | $awk '{print $2}' | + $sed -e 's/[A-Za-z]$//'` + elif $test -x /usr/etc/version; then + osvers=`/usr/etc/version | $awk '{print $2}' | + $sed -e 's/[A-Za-z]$//'` + else + osvers="$2.$3" + fi +fi +$test -f /sys/posix.dll && + $test -f /usr/bin/what && + set X `/usr/bin/what /sys/posix.dll` && + $test "$3" = UWIN && + osname=uwin && + osvers="$5" +if $test "X$has_uname" != X; then + set X $myuname + shift + case "$5" in + fps*) osname=fps ;; + mips*) + case "$4" in + umips) osname=umips ;; + *) osname=mips ;; + esac;; + [23]100) osname=mips ;; + next*) osname=next ;; + i386*) + tmp=`/bin/uname -X 2>/dev/null|awk '/3\.2v[45]/{ print $(NF) }'` + if $test "$tmp" != "" -a "$3" = "3.2" -a -f '/etc/systemid'; then + osname='sco' + osvers=$tmp + elif $test -f /etc/kconfig; then + osname=isc + if $test "$lns" = "$ln -s"; then + osvers=4 + elif $contains _SYSV3 /usr/include/stdio.h > /dev/null 2>&1 ; then + osvers=3 + elif $contains _POSIX_SOURCE /usr/include/stdio.h > /dev/null 2>&1 ; then + osvers=2 + fi + fi + tmp='' + ;; + pc*) + if $test -n "$DJGPP"; then + osname=dos + osvers=djgpp + fi + ;; + esac + case "$1" in + aix) osname=aix + tmp=`( (oslevel) 2>/dev/null || echo "not found") 2>&1` + case "$tmp" in + 'not found') osvers="$4"."$3" ;; + '<3240'|'<>3240') osvers=3.2.0 ;; + '=3240'|'>3240'|'<3250'|'<>3250') osvers=3.2.4 ;; + '=3250'|'>3250') osvers=3.2.5 ;; + *) osvers=$tmp;; + esac + ;; + bsd386) osname=bsd386 + osvers=`$uname -r` + ;; + cygwin*) osname=cygwin + osvers="$3" + ;; + *dc.osx) osname=dcosx + osvers="$3" + ;; + dnix) osname=dnix + osvers="$3" + ;; + domainos) osname=apollo + osvers="$3" + ;; + dgux) osname=dgux + osvers="$3" + ;; + dynixptx*) osname=dynixptx + osvers=`echo "$4"|sed 's/^v//'` + ;; + freebsd) osname=freebsd + osvers="$3" ;; + genix) osname=genix ;; + hp*) osname=hpux + osvers=`echo "$3" | $sed 's,.*\.\([0-9]*\.[0-9]*\),\1,'` + ;; + irix*) osname=irix + case "$3" in + 4*) osvers=4 ;; + 5*) osvers=5 ;; + *) osvers="$3" ;; + esac + ;; + linux) osname=linux + case "$3" in + *) osvers="$3" ;; + esac + ;; + MiNT) osname=mint + ;; + netbsd*) osname=netbsd + osvers="$3" + ;; + news-os) osvers="$3" + case "$3" in + 4*) osname=newsos4 ;; + *) osname=newsos ;; + esac + ;; + next*) osname=next ;; + nonstop-ux) osname=nonstopux ;; + openbsd) osname=openbsd + osvers="$3" + ;; + POSIX-BC | posix-bc ) osname=posix-bc + osvers="$3" + ;; + powerux | power_ux | powermax_os | powermaxos | \ + powerunix | power_unix) osname=powerux + osvers="$3" + ;; + qnx) osname=qnx + osvers="$4" + ;; + solaris) osname=solaris + case "$3" in + 5*) osvers=`echo $3 | $sed 's/^5/2/g'` ;; + *) osvers="$3" ;; + esac + ;; + sunos) osname=sunos + case "$3" in + 5*) osname=solaris + osvers=`echo $3 | $sed 's/^5/2/g'` ;; + *) osvers="$3" ;; + esac + ;; + titanos) osname=titanos + case "$3" in + 1*) osvers=1 ;; + 2*) osvers=2 ;; + 3*) osvers=3 ;; + 4*) osvers=4 ;; + *) osvers="$3" ;; + esac + ;; + ultrix) osname=ultrix + osvers="$3" + ;; + osf1|mls+) case "$5" in + alpha) + osname=dec_osf + osvers=`sizer -v | awk '{print $3}' | \ + ./tr '[A-Z]' '[a-z]' | sed 's/^[xvt]//'` + case "$osvers" in + [1-9].[0-9]*) ;; + *) osvers=`echo "$3" | sed 's/^[xvt]//'` ;; + esac + ;; + hp*) osname=hp_osf1 ;; + mips) osname=mips_osf1 ;; + esac + ;; + unixware) osname=svr5 + osvers="$4" + ;; + uts) osname=uts + osvers="$3" + ;; + vos) osvers="$3" + ;; + $2) case "$osname" in + *isc*) ;; + *freebsd*) ;; + svr*) + : svr4.x or possibly later + case "svr$3" in + ${osname}*) + osname=svr$3 + osvers=$4 + ;; + esac + case "$osname" in + svr4.0) + : Check for ESIX + if $test -f /stand/boot ; then + eval `$grep '^INITPROG=[a-z/0-9]*$' /stand/boot` + if $test -n "$INITPROG" -a -f "$INITPROG"; then + isesix=`strings -a $INITPROG | \ + $grep 'ESIX SYSTEM V/386 Release 4.0'` + if $test -n "$isesix"; then + osname=esix4 + fi + fi + fi + ;; + esac + ;; + *) if $test -f /etc/systemid; then + osname=sco + set `echo $3 | $sed 's/\./ /g'` $4 + if $test -f $src/hints/sco_$1_$2_$3.sh; then + osvers=$1.$2.$3 + elif $test -f $src/hints/sco_$1_$2.sh; then + osvers=$1.$2 + elif $test -f $src/hints/sco_$1.sh; then + osvers=$1 + fi + else + case "$osname" in + '') : Still unknown. Probably a generic Sys V. + osname="sysv" + osvers="$3" + ;; + esac + fi + ;; + esac + ;; + *) case "$osname" in + '') : Still unknown. Probably a generic BSD. + osname="$1" + osvers="$3" + ;; + esac + ;; + esac +else + if $test -f /vmunix -a -f $src/hints/news_os.sh; then + (what /vmunix | UU/tr '[A-Z]' '[a-z]') > UU/kernel.what 2>&1 + if $contains news-os UU/kernel.what >/dev/null 2>&1; then + osname=news_os + fi + $rm -f UU/kernel.what + elif $test -d c:/.; then + set X $myuname + osname=os2 + osvers="$5" + fi +fi + +: Try to determine whether config.sh was made on this system +case "$config_sh" in +'') dflt=n case "$knowitall" in '') if test -f ../config.sh; then if $contains myuname= ../config.sh >/dev/null 2>&1; then - eval "`grep myuname= ../config.sh`" + eval "`$grep myuname= ../config.sh`" fi if test "X$myuname" = "X$newmyuname"; then dflt=y @@ -1795,18 +2124,21 @@ case "$knowitall" in *) dflt=y;; esac -: Get old answers, if there is a config file out there +: Get old answers from config file if it was generated on the same system hint=default -hintfile='' -if test -f ../config.sh; then +if $test -f ../config.sh; then echo " " rp="I see a config.sh file. Shall I use it to set the defaults?" . ./myread case "$ans" in - n*|N*) echo "OK, I'll ignore it.";; + n*|N*) echo "OK, I'll ignore it." + mv ../config.sh ../config.sh.old + myuname="$newmyuname" + ;; *) echo "Fetching default answers from your old config.sh file..." >&4 tmp_n="$n" tmp_c="$c" + tmp_sh="$sh" . ../config.sh cp ../config.sh . n="$tmp_n" @@ -1821,6 +2153,7 @@ fi echo "Fetching default answers from $config_sh..." >&4 tmp_n="$n" tmp_c="$c" + tmp_sh="$sh" cd .. cp $config_sh config.sh 2>/dev/null chmod +w config.sh @@ -1832,19 +2165,76 @@ fi hint=previous ;; esac -test "$override" && . ./optdef.sh +case "$sh" in +'') sh="$tmp_sh" ;; +esac +$test "$override" && . ./optdef.sh : Restore computed paths for file in $loclist $trylist; do eval $file="\$_$file" done -: process their -A options +. ./checkcc +case "$targetarch" in +'') ;; +*) hostarch=$osname + osname=`echo $targetarch|sed 's,^[^-]*-,,'` + osvers='' + ;; +esac + +: Process their -A options . ./posthint.sh +: Ask them to confirm the OS name +cat << EOM + +Configure uses the operating system name and version to set some defaults. +The default value is probably right if the name rings a bell. Otherwise, +since spelling matters for me, either accept the default or answer "none" +to leave it blank. + +EOM +case "$osname" in + ''|' ') + case "$hintfile" in + ''|' '|none) dflt=none ;; + *) dflt=`echo $hintfile | $sed -e 's/\.sh$//' -e 's/_.*$//'` ;; + esac + ;; + *) dflt="$osname" ;; +esac +rp="Operating system name?" +. ./myread +case "$ans" in +none) osname='' ;; +*) osname=`echo "$ans" | $sed -e 's/[ ][ ]*/_/g' | ./tr '[A-Z]' '[a-z]'`;; +esac +echo " " +case "$osvers" in + ''|' ') + case "$hintfile" in + ''|' '|none) dflt=none ;; + *) dflt=`echo $hintfile | $sed -e 's/\.sh$//' -e 's/^[^_]*//'` + dflt=`echo $dflt | $sed -e 's/^_//' -e 's/_/./g'` + case "$dflt" in + ''|' ') dflt=none ;; + esac + ;; + esac + ;; + *) dflt="$osvers" ;; +esac +rp="Operating system version?" +. ./myread +case "$ans" in +none) osvers='' ;; +*) osvers="$ans" ;; +esac + : who configured the system -LC_ALL=C; export LC_ALL -cf_time=`$date 2>&1` +cf_time=`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1` cf_by=`(logname) 2>/dev/null` case "$cf_by" in "") @@ -1854,12 +2244,18 @@ case "$cf_by" in esac ;; esac +: allow them to override the AFS root +case "$afsroot" in +'') afsroot=/afs ;; +*) afsroot=$afsroot ;; +esac + : is AFS running? echo " " case "$afs" in $define|true) afs=true ;; $undef|false) afs=false ;; -*) if test -d /afs; then +*) if $test -d $afsroot; then afs=true else afs=false @@ -1876,7 +2272,8 @@ fi echo " " case "$sysman" in '') - syspath='/usr/man/man1 /usr/man/mann /usr/man/manl /usr/man/local/man1' + syspath='/usr/share/man/man1 /usr/man/man1' + syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1" syspath="$syspath /usr/man/u_man/man1 /usr/share/man/man1" syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1" syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1" @@ -1969,10 +2366,15 @@ exp_file='' nopath_ok='' orig_rp="$rp" orig_dflt="$dflt" +case "$gfpth" in +'') gfpth='.' ;; +esac case "$fn" in *\(*) - expr $fn : '.*(\(.*\)).*' | tr ',' '\012' >getfile.ok + : getfile will accept an answer from the comma-separated list + : enclosed in parentheses even if it does not meet other criteria. + expr "$fn" : '.*(\(.*\)).*' | $tr ',' $trnl >getfile.ok fn=`echo $fn | sed 's/(.*)//'` ;; esac @@ -2071,6 +2473,7 @@ while test "$type"; do true) case "$ansexp" in /*) value="$ansexp" ;; + [a-zA-Z]:/*) value="$ansexp" ;; *) redo=true case "$already" in @@ -2095,18 +2498,40 @@ while test "$type"; do '') case "$type" in File) - if test -f "$ansexp"; then - type='' - elif test -r "$ansexp" || (test -h "$ansexp") >/dev/null 2>&1 - then - echo "($value is not a plain file, but that's ok.)" - type='' - fi + for fp in $gfpth; do + if test "X$fp" = X.; then + pf="$ansexp" + else + pf="$fp/$ansexp" + fi + if test -f "$pf"; then + type='' + elif test -r "$pf" || (test -h "$pf") >/dev/null 2>&1 + then + echo "($value is not a plain file, but that's ok.)" + type='' + fi + if test X"$type" = X; then + value="$pf" + break + fi + done ;; Directory) - if test -d "$ansexp"; then - type='' - fi + for fp in $gfpth; do + if test "X$fp" = X.; then + dir="$ans" + direxp="$ansexp" + else + dir="$fp/$ansexp" + direxp="$fp/$ansexp" + fi + if test -d "$direxp"; then + type='' + value="$dir" + break + fi + done ;; Locate) if test -d "$ansexp"; then @@ -2160,6 +2585,7 @@ ans="$value" rp="$orig_rp" dflt="$orig_dflt" rm -f getfile.ok +test "X$gfpthkeep" != Xy && gfpth="" EOSC : determine root of directory hierarchy where package will be installed. @@ -2406,7 +2832,6 @@ fi : preserve RCS keywords in files with variable substitution, grrr Header='$Header' Id='$Id' -Locker='$Locker' Log='$Log' : Define several unixisms. @@ -2434,8 +2859,11 @@ echo exit 1 >venix echo exit 1 >os2 echo exit 1 >gnu echo exit 1 >linux +echo exit 1 >dos d_bsd="$undef" d_linux="$undef" +d_dos="$undef" +d_os2="$undef" $cat /usr/include/signal.h /usr/include/sys/signal.h >foo 2>/dev/null if test -f /osf_boot || $contains 'OSF/1' /usr/include/ctype.h >/dev/null 2>&1 then @@ -2495,9 +2923,21 @@ case "$p_" in *) $cat <<'EOI' I have the feeling something is not exactly right, however...don't tell me... +EOI + if test -n "$DJGPP"; then + case "X${MACHTYPE:-nonesuchmach}" in + cygwin) echo "hah!... you're running under Cygwin!";; + *) echo "got it... you're running DOS with DJGPP!";; + esac + echo exit 0 >dos + d_dos="$define" + else + $cat <<'EOI' lemme think...does HAL ring a bell?...no, of course, you're only running OS/2! EOI - echo exit 0 >os2 + echo exit 0 >os2 + d_os2="$define" + fi ;; esac if test -f /xenix; then @@ -2522,12 +2962,58 @@ else echo "Nor is it Venix..." fi fi -chmod +x bsd usg v7 osf1 eunice xenix venix os2 gnu linux -$eunicefix bsd usg v7 osf1 eunice xenix venix os2 gnu linux +chmod +x bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux +$eunicefix bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux $rm -f foo +: What should the include directory be ? +echo " " +$echo $n "Hmm... $c" +dflt='/usr/include' +incpath='' +mips_type='' +if $test -f /bin/mips && /bin/mips; then + echo "Looks like a MIPS system..." + $cat >usr.c <<'EOCP' +#ifdef SYSTYPE_BSD43 +/bsd43 +#endif +EOCP + if cc -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then + dflt='/bsd43/usr/include' + incpath='/bsd43' + mips_type='BSD 4.3' + else + mips_type='System V' + fi + $rm -f usr.c usr.out + echo "and you're compiling with the $mips_type compiler and libraries." + xxx_prompt=y + echo "exit 0" >mips +else + echo "Doesn't look like a MIPS system." + xxx_prompt=n + echo "exit 1" >mips +fi +chmod +x mips +$eunicefix mips +case "$usrinc" in +'') ;; +*) dflt="$usrinc";; +esac +case "$xxx_prompt" in +y) fn=d/ + echo " " + rp='Where are the include files you want to use?' + . ./getfile + usrinc="$ans" + ;; +*) usrinc="$dflt" + ;; +esac + : see if we have to deal with yellow pages, now NIS. -if $test -d /usr/etc/yp || $test -d /etc/yp; then +if $test -d /usr/etc/yp || $test -d /etc/yp || $test -d /usr/lib/yp; then if $test -f /usr/etc/nibindd; then echo " " echo "I'm fairly confident you're on a NeXT." @@ -2571,13 +3057,16 @@ if $test -d /usr/etc/yp || $test -d /etc/yp; then esac fi case "$hostcat" in -'') hostcat='cat /etc/hosts';; +'') hostcat=':' + $test -f /etc/hosts && hostcat='cat /etc/hosts';; esac case "$groupcat" in -'') groupcat='cat /etc/group';; +'') groupcat=':' + $test -f /etc/group && groupcat='cat /etc/group';; esac case "$passcat" in -'') passcat='cat /etc/passwd';; +'') passcat=':' + $test -f /etc/passwd && passcat='cat /etc/passwd';; esac : now get the host name @@ -2634,6 +3123,9 @@ if $test "$cont"; then fi fi fi +case "$myhostname" in +'') myhostname=noname ;; +esac : you do not want to know about this set $myhostname myhostname=$1 @@ -2685,14 +3177,20 @@ case "$myhostname" in tmp_re="[ . ]" $test x`$awk "/[0-9].*[ ]$myhostname$tmp_re/ { sum++ } END { print sum }" hosts` = x1 || tmp_re="[ ]" - dflt=.`$awk "/[0-9].*[ ]$myhostname$tmp_re/ {for(i=2; i<=NF;i++) print \\\$i}" \ + dflt=.`$awk \ + "/[0-9].*[ ]$myhostname$tmp_re/ {for(i=2; i<=NF;i++) print \\\$i}" \ hosts | $sort | $uniq | \ $sed -n -e "s/$myhostname\.\([-a-zA-Z0-9_.]\)/\1/p"` case `$echo X$dflt` in X*\ *) echo "(Several hosts in /etc/hosts matched hostname)" dflt=. ;; - X.) echo "(You do not have fully-qualified names in /etc/hosts)" + X.) + if $test -f /etc/hosts; then + echo "(You do not have fully-qualified names in /etc/hosts)" + else + echo "(I cannot locate a hosts database anywhere)" + fi ;; esac case "$dflt" in @@ -2721,9 +3219,16 @@ case "$myhostname" in esac ;; esac + case "$dflt$osname" in + .os390) + file="//'SYS1.TCPPARMS(TCPDATA)'" + echo "(Attempting domain name extraction from $file)" + dflt=.`awk '/^DOMAINORIGIN/ {print $2}' "$file" 2>/dev/null` + ;; + esac case "$dflt" in .) echo "(Lost all hope -- silly guess then)" - dflt='.uucp' + dflt='.nonet' ;; esac $rm -f hosts @@ -2776,7 +3281,7 @@ $cat <&4 +$cat >try.c < +int main() { +#ifdef __GNUC__ +#ifdef __VERSION__ + printf("%s\n", __VERSION__); +#else + printf("%s\n", "1"); +#endif +#endif + exit(0); +} +EOM +if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then + gccversion=`$run ./try` + case "$gccversion" in + '') echo "You are not using GNU cc." ;; + *) echo "You are using GNU cc $gccversion." + ccname=gcc + ;; esac - ;; -*) dflt="$defeditor" - ;; +else + echo " " + echo "*** WHOA THERE!!! ***" >&4 + echo " Your C compiler \"$cc\" doesn't seem to be working!" >&4 + case "$knowitall" in + '') + echo " You'd better start hunting for one and let me know about it." >&4 + exit 1 + ;; + esac +fi +$rm -f try try.* +case "$gccversion" in +1*) cpp=`./loc gcc-cpp $cpp $pth` ;; esac -fn=f/ -rp="What is the default editor on your system?" -. ./getfile -defeditor="$ans" +case "$gccversion" in +'') gccosandvers='' ;; +*) gccshortvers=`echo "$gccversion"|sed 's/ .*//'` + gccosandvers=`$cc -v 2>&1 | \ + $grep '/specs$'|sed "s!.*/[^-/]*-[^-/]*-\([^-/]*\)/$gccshortvers/specs!\1!"` + gccshortvers='' + case "$gccosandvers" in + $osname) gccosandvers='' ;; # linux gccs seem to have no linux osvers, grr + $osname$osvers) ;; # looking good + $osname*) cat <&4 + +*** WHOA THERE!!! *** + + Your gcc has not been compiled for the exact release of + your operating system ($gccosandvers versus $osname$osvers). + + In general it is a good idea to keep gcc synchronized with + the operating system because otherwise serious problems + may ensue when trying to compile software, like Perl. + + I'm trying to be optimistic here, though, and will continue. + If later during the configuration and build icky compilation + problems appear (headerfile conflicts being the most common + manifestation), I suggest reinstalling the gcc to match + your operating system release. -: locate a BSD compatible install program -echo " " -echo "Looking for a BSD-compatible install program..." >&4 -creatdir='' -case "$install" in -'') - tryit='' - for dir in $pth; do - for file in ginstall installbsd scoinst install; do - if $test -f $dir/$file; then - tryit="$tryit $dir/$file" - fi - done - done - $cat >try.c </dev/null 2>&1; then - cp try try.ns - strip try >/dev/null 2>&1 - else - echo "(I can't seem to compile a trivial C program -- bypassing.)" - echo "try" >try - cp try try.ns - fi - $cat >tryinst </dev/null 2>&1 - if $test -d foo/bar; then - creatdir="$prog -d" - fi - (ls -l d/try >try.ls; ls -l d/try.ns >tryno.ls) 2>/dev/null - if (cmp -s d/try try && cmp -s d/try.ns try.ns && \ - $contains 'rwxrw-r--' tryno.ls && \ - $contains 'rw-r---w-' try.ls) >/dev/null 2>&1 - then - dflt="$prog" - echo "ok, that will do." - break - fi - echo "not good$either." - either=' either' - $rm -f try*.ls - done - $rm -rf foo d tryinst try try*.ls try.* - case "$dflt" in - '') - echo "Hopefully, $package comes with its own install script!" - dflt='./install' - ;; - esac - ;; -*) dflt="$install";; -esac -$cat <&4 -case "$installdir" in -'') - case "$creatdir" in - '') - $mkdir -p foo/bar >/dev/null 2>&1 - if $test -d foo/bar; then - echo "Great, we can build them using 'mkdir -p'." - creatdir='mkdir -p' - elif eval "$install -d foo/bar"; $test -d foo/bar; then - creatdir="install -d" - echo "It looks like '$creatdir' will do it for us." - fi - ;; - *) - eval "$creatdir foo/bar" >/dev/null 2>&1 - if $test -d foo/bar; then - echo "Ah! We can use '$creatdir' to do just that." - fi - ;; - esac - $rm -rf foo - case "$creatdir" in - '') - echo "Heck! Another ancient system lacking the comfort of modern ones!" - echo "You can thank $package for bringing you its own install script!" - installdir='./install -d' - ;; - *) installdir="$creatdir";; - esac - ;; -*) echo "As you already told me, '$installdir' should work.";; -esac - -: determine the name of a reasonable mailer -case "$mailer" in -'') - if $test -f "$sendmail"; then - dflt="$sendmail" - elif $test -f "$smail"; then - dflt="$smail" - elif $test -f "$rmail"; then - dflt="$rmail" - elif $test -f /bin/mail; then - dflt=/bin/mail - else - dflt=$mail - fi - ;; -*) dflt="$mailer";; -esac -$cat <try.c + for incdir in `$cc -v -c try.c 2>&1 | \ + sed '1,/^#include <\.\.\.>/d;/^End of search list/,$d;s/^ //'` ; do + locincpth=`echo $locincpth | sed s!$incdir!!` + done + $rm -f try try.* +esac + +: see how we invoke the C preprocessor echo " " echo "Now, how can we feed standard input to your C preprocessor..." >&4 cat <<'EOT' >testcpp.c @@ -3007,8 +3428,20 @@ cat <<'EOT' >testcpp.c ABC.XYZ EOT cd .. -echo 'cat >.$$.c; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >cppstdin +if $test ! -f cppstdin; then + echo "$startsh" >cppstdin +if $test "X$osname" = "Xaix" -a "X$gccversion" = X; then + echo 'cat >.$$.c; rm -f .$$.u; '"$cc"' ${1+"$@"} -M -c .$$.c 2>/dev/null; \ + test -s .$$.u && \ + awk '"'"'$2 ~ /\.h$/ { print "# 0 \""$2"\"" }'"'"' .$$.u; \ + rm -f .$$.o .$$.u; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >> cppstdin +else + echo 'cat >.$$.c; '"$cc"' -E ${1+"$@"} .$$.c; rm .$$.c' >>cppstdin +fi; else + echo "Keeping your $hint cppstdin wrapper." +fi chmod 755 cppstdin +$eunicefix cppstdin wrapper=`pwd`/cppstdin ok='false' cd UU @@ -3131,212 +3564,497 @@ false) esac case "$cppstdin" in -"$wrapper") ;; +"$wrapper"|'cppstdin') ;; *) $rm -f $wrapper;; esac $rm -f testcpp.c testcpp.out -: find out how to generate dependencies -echo " " -echo "Checking how to generate makefile dependencies on your machine..." >&4 -toplev=`cd ..;pwd` -$cat >dep.c <<'EOCP' -#include "dep.h" -EOCP -$cat >dep.h <<'EOCP' +: Set private lib path +case "$plibpth" in +'') if ./mips; then + plibpth="$incpath/usr/lib /usr/local/lib /usr/ccs/lib" + fi;; +esac +case "$libpth" in +' ') dlist='';; +'') dlist="$loclibpth $plibpth $glibpth";; +*) dlist="$libpth";; +esac -EOCP -takeflags='flags="" -case "$@" in -*--*) - for arg - do - shift - case "$arg" in - --) break;; - *) flags="$flags $arg";; +: Now check and see which directories actually exist, avoiding duplicates +libpth='' +for xxx in $dlist +do + if $test -d $xxx; then + case " $libpth " in + *" $xxx "*) ;; + *) libpth="$libpth $xxx";; esac - done;; -esac' -case "$mkdep" in -'') - ;; + fi +done +$cat <<'EOM' + +Some systems have incompatible or broken versions of libraries. Among +the directories listed in the question below, please remove any you +know not to be holding relevant libraries, and add any that are needed. +Say "none" for none. + +EOM +case "$libpth" in +'') dflt='none';; *) - if test -f "$mkdep" && - $mkdep dep.c >dep.out 2>/dev/null && - $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 - then - echo "$mkdep works." - else - mkdep= - fi + set X $libpth + shift + dflt=${1+"$@"} + ;; +esac +rp="Directories to use for library searches?" +. ./myread +case "$ans" in +none) libpth=' ';; +*) libpth="$ans";; esac -case "$mkdep" in -'') - $spitshell > ../mkdep </dev/null +: determine optimize, if desired, or use for debug flag also +case "$optimize" in +' '|$undef) dflt='none';; +'') dflt='-O';; +*) dflt="$optimize";; +esac +$cat </dev/null 2>&1 + then + dflt="$dflt -posix" + fi + ;; + esac + case "$gccversion" in + 1*|2*) dflt="$dflt -Wall";; + *) dflt="$dflt -W -Wall -Wformat=2";; + esac + ;; +esac + +case "$mips_type" in +*BSD*|'') inclwanted="$locincpth $usrinc";; +*) inclwanted="$locincpth $inclwanted $usrinc/bsd";; +esac +for thisincl in $inclwanted; do + if $test -d $thisincl; then + if $test x$thisincl != x$usrinc; then + case "$dflt" in + *$thisincl*);; + *) dflt="$dflt -I$thisincl";; + esac + fi + fi done -exit 0 + +inctest='if $contains $2 $usrinc/$1 >/dev/null 2>&1; then + xxx=true; +elif $contains $2 $usrinc/sys/$1 >/dev/null 2>&1; then + xxx=true; +else + xxx=false; +fi; +if $xxx; then + case "$dflt" in + *$2*);; + *) dflt="$dflt -D$2";; + esac; +fi' + +if ./osf1; then + set signal.h __LANGUAGE_C__; eval $inctest +else + set signal.h LANGUAGE_C; eval $inctest +fi + +case "$hint" in +default|recommended) dflt="$ccflags $dflt" ;; +*) dflt="$ccflags";; +esac + +case "$dflt" in +''|' ') dflt=none;; +esac +$cat <&4 + set X $cppflags + shift + cppflags='' + $cat >cpp.c <<'EOM' +#define BLURFL foo + +BLURFL xx LFRULB EOM - mkdep=$toplev/mkdep - chmod +x $mkdep - $eunicefix $mkdep - if $mkdep dep.c >dep.out 2>/dev/null && - $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 - then - echo "Looks like we can use $cpp -M." + previous='' + for flag in $* + do + case "$flag" in + -*) ftry="$flag";; + *) ftry="$previous $flag";; + esac + if $cppstdin -DLFRULB=bar $ftry $cppminus cpp1.out 2>/dev/null && \ + $cpprun -DLFRULB=bar $ftry $cpplast cpp2.out 2>/dev/null && \ + $contains 'foo.*xx.*bar' cpp1.out >/dev/null 2>&1 && \ + $contains 'foo.*xx.*bar' cpp2.out >/dev/null 2>&1 + then + cppflags="$cppflags $ftry" + previous='' + else + previous="$flag" + fi + done + set X $cppflags + shift + cppflags=${1+"$@"} + case "$cppflags" in + *-*) echo "They appear to be: $cppflags";; + esac + $rm -f cpp.c cpp?.out + ;; +esac + +: flags used in final linking phase +case "$ldflags" in +'') if ./venix; then + dflt='-i -z' else - mkdep= + dflt='' fi + case "$ccflags" in + *-posix*) dflt="$dflt -posix" ;; + esac ;; +*) dflt="$ldflags";; esac -case "$mkdep" in -'') - $spitshell > ../mkdep </dev/null +: Try to guess additional flags to pick up local libraries. +for thislibdir in $libpth; do + case " $loclibpth " in + *" $thislibdir "*) + case "$dflt " in + *"-L$thislibdir "*) ;; + *) dflt="$dflt -L$thislibdir" ;; + esac + ;; + esac done -exit 0 + +case "$dflt" in +'') dflt='none' ;; +*) set X $dflt; shift; dflt="$@";; +esac + +$cat <&4 +set X $cc $optimize $ccflags $ldflags -o try try.c +shift +$cat >try.msg <dep.out 2>/dev/null && - $contains "dep$_o: dep.h" dep.out >/dev/null 2>&1 - then - echo "Looks like we can use $cc -MM." +$cat > try.c <<'EOF' +#include +int main() { exit(0); } +EOF +dflt=y +if sh -c "$cc $optimize $ccflags $ldflags -o try try.c" >>try.msg 2>&1; then + if sh -c './try' >>try.msg 2>&1; then + dflt=n else - mkdep= + echo "The program compiled OK, but exited with status $?." >>try.msg + rp="You have a problem. Shall I abort Configure" + dflt=y fi +else + echo "I can't compile the test program." >>try.msg + rp="You have a BIG problem. Shall I abort Configure" + dflt=y +fi +case "$dflt" in +y) + $cat try.msg >&4 + case "$knowitall" in + '') + echo "(The supplied flags might be incorrect with this C compiler.)" + ;; + *) dflt=n;; + esac + echo " " + . ./myread + case "$ans" in + n*|N*) ;; + *) echo "Ok. Stopping Configure." >&4 + exit 1 + ;; + esac ;; +n) echo "OK, that should do.";; esac +$rm -f try try.* core -case "$mkdep" in +: determine default editor +echo " " +case "$defeditor" in '') - $spitshell >../mkdep </dev/null | \\ - $sed -e '/^# *[0-9]/!d' \\ - -e 's/^.*"\(.*\)".*\$/'\$filebase'$_o: \1/' \\ - -e 's|: \./|: |' \\ - -e 's|: *$|: '\$srcfile'|' | \\ - $grep -v '^#' | $sort | $uniq -done -exit 0 -EOS - mkdep=$toplev/mkdep - chmod +x $mkdep - $eunicefix $mkdep - if $mkdep dep.c >dep.out 2>/dev/null && - $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 - then - echo "A shell script using $cpp does the trick." - else - echo "$cpp doesn't seem to be any use at all." - $spitshell >../mkdep </ d' \\ - -e 's/:[^"]*"\([^"]*\)".*/: \1/' \\ - -e "s/\\.c:/$_o:/p" > /tmp/mkdep\$\$ - IFS=': ' - while read file dep; do - for dir in \$inc; do - if $test -f "\$dir/\$dep"; then - dep="\$dir/\$dep" - break + ;; +*) dflt="$defeditor" + ;; +esac +fn=f/ +rp="What is the default editor on your system?" +. ./getfile +defeditor="$ans" + +: locate a BSD compatible install program +echo " " +echo "Looking for a BSD-compatible install program..." >&4 +creatdir='' +case "$install" in +'') + tryit='' + for dir in $pth; do + for file in ginstall installbsd scoinst install; do + if $test -f $dir/$file; then + tryit="$tryit $dir/$file" fi done - echo "\$file: \$dep" | $sed -e 's,: \./,: ,' - done try.c </dev/null 2>&1; then + cp try try.ns + strip try >/dev/null 2>&1 + else + echo "(I can't seem to compile a trivial C program -- bypassing.)" + echo "try" >try + cp try try.ns + fi + $cat >tryinst <dep.out 2>/dev/null && - $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 + chmod +x tryinst + $eunicefix tryinst + dflt='' + either='' + for prog in $tryit; do + $echo $n "Checking $prog... $c" + ./tryinst $prog >/dev/null 2>&1 + if $test -d foo/bar; then + creatdir="$prog -d" + fi + (ls -l d/try >try.ls; ls -l d/try.ns >tryno.ls) 2>/dev/null + if (cmp -s d/try try && cmp -s d/try.ns try.ns && \ + $contains 'rwxrw-r--' tryno.ls && \ + $contains 'rw-r---w-' try.ls) >/dev/null 2>&1 then - cat << EOM - -I can use a script with grep instead, but it will make some incorrect -dependencies, since it doesn't understand about conditional compilation. -Moreover, some dependencies may be missing, because scanning won't be -a recursive process. -If you have a program which generates makefile dependencies, you may want -to use it. If not, you can use the script and edit the Makefile by hand -if you need to. -EOM - else - mkdep= - cat << EOM + dflt="$prog" + echo "ok, that will do." + break + fi + echo "not good$either." + either=' either' + $rm -f try*.ls + done + $rm -rf foo d tryinst try try*.ls try.* + case "$dflt" in + '') + echo "Hopefully, $package comes with its own install script!" + dflt='./install' + ;; + esac + ;; +*) dflt="$install";; +esac +$cat <&4 +case "$installdir" in +'') + $mkdir -p foo/bar >/dev/null 2>&1 + if $test -d foo/bar; then + echo "Great, we can build them using 'mkdir -p'." + creatdir='mkdir -p' + else + case "$creatdir" in + '') + if eval "$install -d foo/bar"; $test -d foo/bar; then + creatdir="install -d" + echo "It looks like '$creatdir' will do it for us." + fi + ;; + *) + eval "$creatdir foo/bar" >/dev/null 2>&1 + if $test -d foo/bar; then + echo "Ah! We can use '$creatdir' to do just that." + else + creatdir='' + fi + ;; + esac fi + $rm -rf foo + case "$creatdir" in + '') + echo "Heck! Another ancient system lacking the comfort of modern ones!" + echo "You can thank $package for bringing you its own install script!" + installdir='./install -d' + ;; + *) installdir="$creatdir";; + esac + ;; +*) echo "As you already told me, '$installdir' should work.";; esac -dflt="$mkdep" -fn=f~/ -rp="Name of program to make makefile dependencies?" + +: determine the name of a reasonable mailer +case "$mailer" in +'') + if $test -f "$sendmail"; then + dflt="$sendmail" + elif $test -f "$smail"; then + dflt="$smail" + elif $test -f "$rmail"; then + dflt="$rmail" + elif $test -f /bin/mail; then + dflt=/bin/mail + else + dflt=$mail + fi + ;; +*) dflt="$mailer";; +esac +$cat <> config.sh +$spitshell <>config.sh + Author='$Author' Date='$Date' Header='$Header' Id='$Id' Locker='$Locker' Log='$Log' -Mcc='$Mcc' RCSfile='$RCSfile' Revision='$Revision' Source='$Source' @@ -3625,6 +4351,7 @@ _a='$_a' _exe='$_exe' _o='$_o' afs='$afs' +afsroot='$afsroot' ar='$ar' archobjs='$archobjs' awk='$awk' @@ -3634,6 +4361,7 @@ bison='$bison' byacc='$byacc' c='$c' cat='$cat' +ccflags='$ccflags' ccname='$ccname' ccversion='$ccversion' cf_by='$cf_by' @@ -3649,6 +4377,7 @@ cp='$cp' cpio='$cpio' cpp='$cpp' cpp_trad='$cpp_trad' +cppflags='$cppflags' cpplast='$cpplast' cppminus='$cppminus' cpprun='$cpprun' @@ -3656,8 +4385,10 @@ cppstdin='$cppstdin' csh='$csh' d_berknames='$d_berknames' d_bsd='$d_bsd' +d_dos='$d_dos' d_eunice='$d_eunice' d_linux='$d_linux' +d_os2='$d_os2' d_passnames='$d_passnames' d_portable='$d_portable' d_usgnames='$d_usgnames' @@ -3673,12 +4404,16 @@ find='$find' firstmakefile='$firstmakefile' flex='$flex' from='$from' +gccosandvers='$gccosandvers' +gccversion='$gccversion' +glibpth='$glibpth' gmake='$gmake' grep='$grep' groupcat='$groupcat' gzip='$gzip' hint='$hint' hostcat='$hostcat' +incpath='$incpath' inews='$inews' install='$install' installdir='$installdir' @@ -3687,11 +4422,16 @@ installprivlib='$installprivlib' installscript='$installscript' issymlink='$issymlink' ksh='$ksh' +ldflags='$ldflags' less='$less' +libpth='$libpth' line='$line' lint='$lint' +lkflags='$lkflags' ln='$ln' lns='$lns' +locincpth='$locincpth' +loclibpth='$loclibpth' lp='$lp' lpr='$lpr' ls='$ls' @@ -3703,7 +4443,7 @@ make_set_make='$make_set_make' manext='$manext' mansrc='$mansrc' mansrcexp='$mansrcexp' -mkdep='$mkdep' +mips_type='$mips_type' mkdir='$mkdir' more='$more' mv='$mv' @@ -3714,6 +4454,7 @@ n='$n' nametype='$nametype' nm='$nm' nroff='$nroff' +optimize='$optimize' orgname='$orgname' osname='$osname' osvers='$osvers' @@ -3725,6 +4466,8 @@ perl='$perl' perlpath='$perlpath' pg='$pg' phostname='$phostname' +pkgsrc='$pkgsrc' +plibpth='$plibpth' pmake='$pmake' pr='$pr' prefix='$prefix' @@ -3766,8 +4509,10 @@ troff='$troff' uname='$uname' uniq='$uniq' usecrosscompile='$usecrosscompile' +usrinc='$usrinc' uuname='$uuname' vi='$vi' +xlibpth='$xlibpth' zcat='$zcat' zip='$zip' EOT @@ -3779,9 +4524,10 @@ echo "CONFIG=true" >>config.sh : propagate old symbols if $test -f UU/config.sh; then - UU/oldconfig.sh - sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' config.sh config.sh UU/oldconfig.sh |\ - sort | uniq -u >UU/oldsyms + UU/oldconfig.sh + $sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' \ + config.sh config.sh UU/oldconfig.sh |\ + $sort | $uniq -u >UU/oldsyms set X `cat UU/oldsyms` shift case $# in @@ -3790,7 +4536,7 @@ if $test -f UU/config.sh; then cat <>config.sh + echo ": Variables propagated from previous config.sh file." >>config.sh for sym in `cat UU/oldsyms`; do echo " Propagating $hint variable "'$'"$sym..." eval 'tmp="$'"${sym}"'"' diff --git a/patchlevel.h b/patchlevel.h index 98a391c..b3ccc99 100644 --- a/patchlevel.h +++ b/patchlevel.h @@ -1,4 +1,5 @@ /* dist-3.0 - 18 Aug 1993 */ +/* dist-3.5 - 25 Aug 2006 */ -#define VERSION 3.0 -#define PATCHLEVEL 70 +#define VERSION 3.5 +#define PATCHLEVEL 0 -- cgit v1.2.3 From 4a6e1bdb7cf6215fd21df65b6bf9135e13753ee6 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 28 Aug 2006 16:44:41 +0000 Subject: Default to "-O2 -g" when using gcc. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@12 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/ccflags.U | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index 8e61474..13b511e 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -94,10 +94,16 @@ : determine optimize, if desired, or use for debug flag also case "$optimize" in ' '|$undef) dflt='none';; -'') dflt='-O';; +'') + case "$gccversion" in + '') dflt='-O';; + *) dflt='-O2 -g';; + esac + ;; *) dflt="$optimize";; esac -$cat < Date: Mon, 28 Aug 2006 16:48:29 +0000 Subject: Removed stale Mcc dependency. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@13 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/gccvers.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/gccvers.U b/mcon/U/gccvers.U index afd520f..b7b42fa 100644 --- a/mcon/U/gccvers.U +++ b/mcon/U/gccvers.U @@ -11,7 +11,7 @@ ?RCS: Copyright (c) 2000, Jarkko Hietaniemi ?RCS: ?MAKE:gccversion gccosandvers: cat cpp rm +cc \ - Mcc Myread Guess Options Oldconfig Loc osname osvers grep run ccname + Myread Guess Options Oldconfig Loc osname osvers grep run ccname ?MAKE: -pick add $@ %< ?S:gccversion: ?S: If GNU cc (gcc) is used, this variable holds '1' or '3' (for instance) -- cgit v1.2.3 From ff478d6baf609486a8c17903f8b4d55c812b04bc Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 28 Aug 2006 16:51:14 +0000 Subject: Do not list special unit "Mcc" as being made. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@14 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Loc.U | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index bf8c056..6afc8f0 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -61,14 +61,14 @@ ?X: I put startsh at the end of the dependency list, in order to avoid the ?X: loading of the spitshell unit before the instructions. ?X: -?MAKE:Loc Mcc awk ar bash bison byacc cat chgrp chmod chown \ +?MAKE:Loc awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ make mkdir more mv nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee test touch tr troff \ uname uniq uuname vi zcat zip: eunicefix n c startsh Instruct Warn ?MAKE: -pick weed $@ %< -?LINT: describe Mcc awk ar bash bison byacc cat chgrp chmod chown \ +?LINT: describe awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ make mkdir more mv nm nroff perl pg pmake pr rm rmail sed sendmail \ -- cgit v1.2.3 From c1975cdfe395d49167ad86a49f14de00dcac0d66 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 30 Aug 2006 18:21:51 +0000 Subject: Added I_SYS_POLL and I_POLL since we cannot rely on HAS_POLL being enough to include . git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@15 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/U/d_poll.U | 4 ++-- mcon/U/i_poll.U | 28 ++++++++++++++++++++++++++++ mcon/U/i_syspoll.U | 28 ++++++++++++++++++++++++++++ 4 files changed, 60 insertions(+), 2 deletions(-) create mode 100644 mcon/U/i_poll.U create mode 100644 mcon/U/i_syspoll.U diff --git a/MANIFEST b/MANIFEST index 2c93375..d7dab2d 100644 --- a/MANIFEST +++ b/MANIFEST @@ -405,6 +405,7 @@ mcon/U/i_memory.U Shall we include ? mcon/U/i_ndbm.U Shall we include ? mcon/U/i_neterrno.U Shall we include ? mcon/U/i_niin.U Shall we include ? +mcon/U/i_poll.U Shall we include ? mcon/U/i_pwd.U Shall we include ? mcon/U/i_regex.U Shall we include ? mcon/U/i_sfio.U Shall we include ? @@ -417,6 +418,7 @@ mcon/U/i_sysioctl.U Include or ? mcon/U/i_sysmman.U Do we have to include ? mcon/U/i_sysndir.U Shall we include ? mcon/U/i_sysparam.U Shall we include ? +mcon/U/i_syspoll.U Shall we include ? mcon/U/i_sysresrc.U Shall we include ? mcon/U/i_sysselct.U Shall we include ? mcon/U/i_syssock.U Shall we include ? diff --git a/mcon/U/d_poll.U b/mcon/U/d_poll.U index f07ef0e..54db1b8 100644 --- a/mcon/U/d_poll.U +++ b/mcon/U/d_poll.U @@ -24,8 +24,8 @@ ?S:. ?C:HAS_POLL : ?C: This symbol, if defined, indicates that the poll routine is -?C: available to poll active file descriptors. You may safely -?C: include when this symbol is defined. +?C: available to poll active file descriptors. Please check I_POLL and +?C: I_SYS_POLL to know which header should be included as well. ?C:. ?H:#$d_poll HAS_POLL /**/ ?H:. diff --git a/mcon/U/i_poll.U b/mcon/U/i_poll.U new file mode 100644 index 0000000..162f4cb --- /dev/null +++ b/mcon/U/i_poll.U @@ -0,0 +1,28 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_poll: Inhdr +?MAKE: -pick add $@ %< +?S:i_poll: +?S: This variable conditionally defines the I_POLL symbol, which +?S: indicates to the C program that it should include . +?S:. +?C:I_POLL: +?C: This symbol, if defined, indicates that the program may include +?C: . If there is no , then you may check I_SYS_POLL +?C: instead to see whether there is a to include. +?C:. +?H:#$i_poll I_POLL /**/ +?H:. +?LINT:set i_poll +: see if there is a poll.h file +set poll.h i_poll +eval $inhdr + diff --git a/mcon/U/i_syspoll.U b/mcon/U/i_syspoll.U new file mode 100644 index 0000000..c284143 --- /dev/null +++ b/mcon/U/i_syspoll.U @@ -0,0 +1,28 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_syspoll: Inhdr +?MAKE: -pick add $@ %< +?S:i_syspoll: +?S: This variable conditionally defines the I_SYS_POLL symbol, which +?S: indicates to the C program that it should include . +?S:. +?C:I_SYS_POLL: +?C: This symbol, if defined, indicates that the program may include +?C: . When I_POLL is also defined, it's probably safest +?C: to only include . +?C:. +?H:#$i_syspoll I_SYS_POLL /**/ +?H:. +?LINT:set i_syspoll +: see if there is a sys/poll.h file +set sys/poll.h i_syspoll +eval $inhdr + -- cgit v1.2.3 From 8dea489d28f8e5c73687a12022cc96d63fe08f65 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 4 Nov 2006 12:11:51 +0000 Subject: Taught metaxref to use MANIFEST if MANIFEST.new is missing. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@16 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/mxref.SH | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/mxref.SH b/mcon/mxref.SH index 06206ee..8e52842 100755 --- a/mcon/mxref.SH +++ b/mcon/mxref.SH @@ -74,7 +74,7 @@ if ($opt_V) { &usage; } -$NEWMANI = $opt_f || 'MANIFEST.new'; +$NEWMANI = $opt_f || (-f 'MANIFEST.new' ? 'MANIFEST.new' : 'MANIFEST'); &init; # Various initializations `mkdir .MT 2>&1` unless -d '.MT'; # For private temporary files -- cgit v1.2.3 From b9b68622c53790d2b182ec6e89cfe2f6a8f0dfb7 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 4 Nov 2006 12:13:28 +0000 Subject: Applied patch from Christian Biere, which adds "-Wshadow" to gcc 3.x flags. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@17 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/ccflags.U | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index 13b511e..0deb0c3 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -150,8 +150,8 @@ default|recommended) ?X: turn warnings on if they're using gcc case "$gccversion" in 1*|2*) dflt="$dflt -Wall";; -?X: starting with version 3, add "-W -Wall -Wformat=2" by default - *) dflt="$dflt -W -Wall -Wformat=2";; +?X: starting with version 3, add "-W -Wall -Wformat=2 -Wshadow" by default + *) dflt="$dflt -W -Wall -Wformat=2 -Wshadow";; esac ;; esac -- cgit v1.2.3 From a2bc6df4196b1de4aff1ec80e441828dca3d08c0 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 27 Dec 2006 10:35:09 +0000 Subject: Added InstallProgramNoStrip() to request installation of a program without stripping the debugging symbols. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@18 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index e303fb1..21ef3fe 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -375,6 +375,20 @@ local_deinstall:: @@\ $(RM) $(INSTALL_PREFIX)^^^dest/program^^^$(_EXE) +/* + * InstallProgramNoStripWithFlags: + * Generate rules to install an executable program using given + * install flags. + */ +#define InstallProgramNoStripWithFlags(program,dest,flags) @!\ +local_install:: program @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -m 555 flags program^^^$(_EXE) $(INSTALL_PREFIX)^^^dest @!\ + @!\ +local_deinstall:: @@\ + $(RM) $(INSTALL_PREFIX)^^^dest/program^^^$(_EXE) + + /* * InstallProgram: * Generate rules to install an executable program using any special @@ -384,6 +398,16 @@ local_deinstall:: @@\ InstallProgramWithFlags(program,dest,^^) +/* + * InstallProgramNoStrip: + * Generate rules to install an executable program using any special + * install flags set in $(INSTALLFLAGS), but without stripping the + * executable from debugging symbols. + */ +#define InstallProgramNoStrip(program,dest) @!\ +InstallProgramNoStripWithFlags(program,dest,^^) + + /* * InstallScriptWithFlags: * Generate rules to install an executable script using given -- cgit v1.2.3 From 77e08c92c85470ea1e3754effce85283ca25a41d Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 13 Aug 2007 12:14:08 +0000 Subject: Linux does not like ^M as line endings: cpp 4.1.x complains. Try with ^A, hoping it will continue to work on HP-UX. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@19 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/fixcpp.SH | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/jmake/fixcpp.SH b/jmake/fixcpp.SH index 24dd274..4bbc69b 100755 --- a/jmake/fixcpp.SH +++ b/jmake/fixcpp.SH @@ -43,7 +43,7 @@ $startperl # This program is meant to be called from jmake. All it does is pre-process # the file it is given as argument, focusing on #include directives and # resolving them as cpp would (but without the #line stuff since we don't -# really care about it), escaping all the trailing \ into '\ ^M'. The resulting +# really care about it), escaping all the trailing \ into '\ ^A'. The resulting # temporary file is then handed off to the real cpp for macro processing, and # the output is printed on stdout, after restoration of any original trailing \. # Again, thanks HP-UX for making this so challenging and exciting... :-) @@ -135,7 +135,7 @@ sub escape { # Don't escape trailing backslashes in macro definition or cpp # won't see them as macro continuation any longer, and also within # macro definitions, all those @@ or @! continuations... - s/\\$/\\ \015/ unless /\@[!@]\\$/ || /^#define/; + s/\\$/\\ \001/ unless /\@[!@]\\$/ || /^#define/; } # Append file to given (opened) file descriptor @@ -172,7 +172,7 @@ sub cpp { local($file) = @_; open(CPP, "$cpp $cpp_opt $file |") || die "Can't fork: $!\n"; while () { - s/\\ \015$/\\/; # Un-escape trailing \ + s/\\ \001$/\\/; # Un-escape trailing \ print STDOUT; } close CPP; -- cgit v1.2.3 From 80f66fdd1d400ef2d592680beec4871e4e023b95 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 4 Jan 2008 23:14:00 +0000 Subject: Applied diff from H.Merijn Brand to keep it working with perl 5.10, which no longer supports the old $* perl4 variable to request multiline matching. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@20 2592e710-e01b-42a5-8df0-11608a6cc53d --- bin/manilist.SH | 3 +-- bin/perload | 6 ++---- jmake/jmake.SH | 6 ++---- mcon/pl/cosmetic.pl | 18 +++++++----------- mcon/pl/makefile.pl | 12 ++++-------- pat/patlog.SH | 8 +++----- pat/patmake.SH | 10 ++++------ 7 files changed, 23 insertions(+), 40 deletions(-) diff --git a/bin/manilist.SH b/bin/manilist.SH index 75dd073..1bb8f3f 100755 --- a/bin/manilist.SH +++ b/bin/manilist.SH @@ -472,8 +472,7 @@ EOF # Remove ':' quotations in front of the lines sub q { local($_) = @_; - local($*) = 1; - s/^://g; + s/^://gm; $_; } diff --git a/bin/perload b/bin/perload index 2354790..e71cbdd 100755 --- a/bin/perload +++ b/bin/perload @@ -273,8 +273,7 @@ if (@Data > 0) { : unless seek(main'DATA, $pos, 0); : local($/) = "\n}"; : local($body) = scalar(); -: local($*) = 1; -: die "End of file found while loading $_[0].\n" unless $body =~ /^\}$/; +: die "End of file found while loading $_[0].\n" unless $body =~ /^\}$/m; EOC if ($opt_t) { print &q(<<'EOC'); @@ -462,8 +461,7 @@ sub flush_comment { sub q { local($_) = @_; - local($*) = 1; - s/^://g; + s/^://gm; $_; } diff --git a/jmake/jmake.SH b/jmake/jmake.SH index 3f676b2..bdb5de7 100755 --- a/jmake/jmake.SH +++ b/jmake/jmake.SH @@ -143,13 +143,11 @@ while () { s/@!\s?/\n/g; s/@@\s?/\n\t/g; - $* = 1; # A '\r' is added to all lines, in order to let 'split' keep them # As lines ending with '\' won't fit in the next regular # expression (why ?), we have to treat that special case separately - s/\n$/\r\n/g; - s/\\\s*$/\\\r/g; # Remove spaces after final '\' and add '\r' - $* = 0; + s/\n$/\r\n/gm; + s/\\\s*$/\\\r/gm; # Remove spaces after final '\' and add '\r' @macro = split(/\n/); for ($i = 0; $i <= $#macro; $i++) { chop($_ = $macro[$i]); # Remove final '\r' diff --git a/mcon/pl/cosmetic.pl b/mcon/pl/cosmetic.pl index bfb9575..d8b535b 100644 --- a/mcon/pl/cosmetic.pl +++ b/mcon/pl/cosmetic.pl @@ -47,26 +47,22 @@ sub cosmetic_update { $/ = "\n"; close NEWMANI; - $* = 1; # Multi-line matching - - &mani_add('Configure', 'Portability tool', $spaces) unless /^Configure\b/; + &mani_add('Configure', 'Portability tool', $spaces) unless /^Configure\b/m; &mani_add('config_h.SH', 'Produces config.h', $spaces) - unless /^config_h\.SH\b/ || !-f 'config_h.SH'; + unless /^config_h\.SH\b/m || !-f 'config_h.SH'; &mani_add('confmagic.h', 'Magic symbol remapping', $spaces) - if $opt_M && !/^confmagic\.h\b/; + if $opt_M && !/^confmagic\.h\b/m; - &mani_remove('config_h.SH') if /^config_h\.SH\b/ && !-f 'config_h.SH'; - &mani_remove('confmagic.h') if /^confmagic.h\b/ && !$opt_M; + &mani_remove('config_h.SH') if /^config_h\.SH\b/m && !-f 'config_h.SH'; + &mani_remove('confmagic.h') if /^confmagic.h\b/m && !$opt_M; if ($opt_G) { # Want a GNU-like configure wrapper &add_configure; &mani_add('configure', 'GNU configure-like wrapper', $spaces) - if !/^configure\s/ && -f 'configure'; + if !/^configure\s/m && -f 'configure'; } else { - &mani_remove('configure') if /^configure\s/ && !-f 'configure'; + &mani_remove('configure') if /^configure\s/m && !-f 'configure'; } - - $* = 0; } # Add file to MANIFEST.new, with properly indented comment diff --git a/mcon/pl/makefile.pl b/mcon/pl/makefile.pl index 290c995..434fbeb 100644 --- a/mcon/pl/makefile.pl +++ b/mcon/pl/makefile.pl @@ -90,15 +90,13 @@ sub build_private { print MAKEFILE "SHELL = /bin/sh\n"; print MAKEFILE "W = $wanted\n"; $saved_dependencies = $dependencies; - $* = 1; foreach $sym (@Cond) { if ($symwanted{$sym}) { - $dependencies =~ s/\+($sym\s)/$1/g; + $dependencies =~ s/\+($sym\s)/$1/gm; } else { - $dependencies =~ s/\+$sym(\s)/$1/g; + $dependencies =~ s/\+$sym(\s)/$1/gm; } } - $* = 0; print MAKEFILE $dependencies; close MAKEFILE; } @@ -161,15 +159,13 @@ sub update_makefile { open(MAKEFILE,">Makefile") || die "Can't create .MT/Makefile.\n"; print MAKEFILE "SHELL = /bin/sh\n"; print MAKEFILE "W = $wanted\n"; - $* = 1; foreach $sym (@Cond) { if ($symwanted{$sym}) { - $saved_dependencies =~ s/\+($sym\s)/$1/g; + $saved_dependencies =~ s/\+($sym\s)/$1/gm; } else { - $saved_dependencies =~ s/\+$sym(\s)/$1/g; + $saved_dependencies =~ s/\+$sym(\s)/$1/gm; } } - $* = 0; print MAKEFILE $saved_dependencies; close MAKEFILE; } diff --git a/pat/patlog.SH b/pat/patlog.SH index eb3fdfa..ad3fbd3 100755 --- a/pat/patlog.SH +++ b/pat/patlog.SH @@ -103,12 +103,10 @@ if (-s ".logs$bnum") { } } close LOGS; - $* = 1; $subj = $logs; - $logs =~ s/^patch\d+:\s*/\t/g; - $logs =~ s/\n/\n\n/g; - $subj =~ s/^patch\d+:\s*/Subject: /g; - $* = 0; + $logs =~ s/^patch\d+:\s*/\t/gm; + $logs =~ s/\n/\n\n/gm; + $subj =~ s/^patch\d+:\s*/Subject: /gm; } else { $subj = "Subject: \n"; } diff --git a/pat/patmake.SH b/pat/patmake.SH index 0ff82fd..3d476f1 100755 --- a/pat/patmake.SH +++ b/pat/patmake.SH @@ -107,15 +107,13 @@ if ($#ARGV > 0) { $mf .= $_ if /^[a-z.]+\s*:/; # Rules in makefile } } -$* = 1; $after = ''; $after .= "\t\tConfigure -ders\n" if -f 'Configure'; -$after .= "\t\tmake depend\n" if $mf =~ /^depend:/; +$after .= "\t\tmake depend\n" if $mf =~ /^depend:/m; $after .= "\t\tmake\n" if $mf; -$after .= "\t\tmake test\n" if $mf =~ /^test:/; -$after .= "\t\tmake install\n" if $mf =~ /^install:/; -$after .= "\t\tmake install.man\n" if $mf =~ /^install\.man:/; -$* = 0; +$after .= "\t\tmake test\n" if $mf =~ /^test:/m; +$after .= "\t\tmake install\n" if $mf =~ /^install:/m; +$after .= "\t\tmake install.man\n" if $mf =~ /^install\.man:/m; chdir 'bugs' if -d 'bugs'; die "$progname: patch #$bnum already exists.\n" if -f "patch$bnum"; -- cgit v1.2.3 From 30af21cdf99d4f7691471776a8f51b1ea7856b89 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 28 May 2008 07:58:50 +0000 Subject: Reset CDPATH to avoid pdksh's emission of the chosen dir on "cd". git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@21 2592e710-e01b-42a5-8df0-11608a6cc53d --- install.SH | 2 ++ 1 file changed, 2 insertions(+) diff --git a/install.SH b/install.SH index 00055a2..84f15d4 100755 --- a/install.SH +++ b/install.SH @@ -55,6 +55,8 @@ newdir="" uid="" gid="" +CDPATH="" + # simulates mkdir -p mkdir_p=' name=$1; -- cgit v1.2.3 From 9b3213c15af156eebe9e6337a2ea300596611e07 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 28 May 2008 08:01:59 +0000 Subject: Perl 5.10 no longer supports "$*" anywhere... even in the initial exec line meant to be parsed by the shell... git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@22 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/makegloss.SH | 2 +- mcon/mconfig.SH | 2 +- mcon/mlint.SH | 2 +- mcon/mxref.SH | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mcon/makegloss.SH b/mcon/makegloss.SH index 991a214..ffe72a2 100755 --- a/mcon/makegloss.SH +++ b/mcon/makegloss.SH @@ -17,7 +17,7 @@ esac echo "Extracting mcon/makegloss (with variable substitutions)" $spitshell >makegloss <mconfig <mlint <mxref < Date: Wed, 28 May 2008 08:05:12 +0000 Subject: Removed last instance of $*, no longer supported in Perl 5.10. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@23 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/pl/files.pl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mcon/pl/files.pl b/mcon/pl/files.pl index 9e6bd08..3962fa6 100644 --- a/mcon/pl/files.pl +++ b/mcon/pl/files.pl @@ -102,8 +102,7 @@ EOF # Remove ':' quotations in front of the lines sub q { local($_) = @_; - local($*) = 1; - s/^://g; + s/^://gm; $_; } -- cgit v1.2.3 From ad4cb12fbbcac74cf5876fe27b5ade25464ec7a6 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 28 May 2008 11:16:28 +0000 Subject: Added automatic SVN revision computation in "revision.h". git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@24 2592e710-e01b-42a5-8df0-11608a6cc53d --- bin/svn-revision | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ revision.h | 7 +++++++ 2 files changed, 68 insertions(+) create mode 100755 bin/svn-revision create mode 100644 revision.h diff --git a/bin/svn-revision b/bin/svn-revision new file mode 100755 index 0000000..0d88b3b --- /dev/null +++ b/bin/svn-revision @@ -0,0 +1,61 @@ +#!/bin/sh + +# +# $Id: svn-revision 12303 2006-11-11 08:11:46Z cbiere $ +# +# Copyright (c) 2006, Raphael Manfredi +# +# You may redistribute only under the terms of the Artistic Licence, +# as specified in the README file that comes with the distribution. +# You may reuse parts of this distribution only within the terms of +# that same Artistic Licence; a copy of which may be found at the root +# of the source tree for dist 4.0. +# +# Computes SVN current revision number, if possible, emitting it in +# the form of a #define for C perusal. +# + +LC_ALL=C +export LC_ALL + +TOP="$1" +FILE="$2" + +if [ "x$FILE" = x ]; then + FILE="&1" + oldrev='' +else + oldrev=`grep REVISION "$FILE" 2>/dev/null | head -n1 | cut -d' ' -f3` +fi + +if test -d "$TOP/.svn"; then + revnum=`svn info "$TOP" 2>/dev/null | grep '^Revision' | head -n1 | cut -d' ' -f2` +else + revnum="$oldrev" # keep as is +fi + +if [ "x$revnum" = "x$oldrev" ]; then + exit 0 +fi + +{ +stamp=`date +"%Y-%m-%d %H:%M:%d %z"` +cat < "$FILE" + diff --git a/revision.h b/revision.h new file mode 100644 index 0000000..20f4e73 --- /dev/null +++ b/revision.h @@ -0,0 +1,7 @@ +/* + * THIS FILE IS AUTOMATICALLY GENERATED -- DO NOT EDIT ME + * + * Generated by ./bin/svn-revision. + */ + +#define REVISION 17 -- cgit v1.2.3 From a04a204b963bf8dbf7bd385c07c59df40f57fedf Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 28 May 2008 11:19:25 +0000 Subject: SVN revision number is now automatically generated in "revision.h". The old patchlevel information is no longer used, and is deprecated in unit files, replaced by . git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@25 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 53 +++++++++++++++++++++++++++++++++++++++++++--------- Jmakefile | 6 ++++++ MANIFEST | 2 ++ Makefile.SH | 11 +++++++++-- jmake/fixcpp.SH | 1 + jmake/jmake.SH | 3 ++- mcon/U/Head.U | 2 +- mcon/U/Oldsym.U | 2 ++ mcon/U/Options.U | 2 +- mcon/U/patchlevel.U | 28 +++++++++++++++++++++++---- mcon/man/mconfig.SH | 6 +++++- mcon/mconfig.SH | 3 ++- mcon/mlint.SH | 3 ++- mcon/mxref.SH | 3 ++- mcon/pl/configure.pl | 4 +++- mcon/pl/lint.pl | 1 + 16 files changed, 107 insertions(+), 23 deletions(-) diff --git a/Configure b/Configure index fc94aef..1fb9e5f 100755 --- a/Configure +++ b/Configure @@ -18,7 +18,7 @@ # $Id: Head.U 6 2006-08-25 22:21:46Z rmanfredi $ # -# Generated on Sat Aug 26 00:34:34 MEST 2006 [metaconfig 3.5 PL0] +# Generated on Wed May 28 13:11:20 CEST 2008 [metaconfig 3.5-17] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-17." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -1351,7 +1352,6 @@ tr uniq " trylist=" -Mcc cpp date inews @@ -3618,10 +3618,16 @@ esac : determine optimize, if desired, or use for debug flag also case "$optimize" in ' '|$undef) dflt='none';; -'') dflt='-O';; +'') + case "$gccversion" in + '') dflt='-O';; + *) dflt='-O2 -g';; + esac + ;; *) dflt="$optimize";; esac -$cat <&4 +echo "Getting the current patchlevel / revision..." >&4 if $test -r $rsrc/patchlevel.h;then patchlevel=`awk \ '/^#[ ]*define[ ][ ]*PATCHLEVEL/ {print $3}' \ @@ -4201,7 +4218,22 @@ if $test -r $rsrc/patchlevel.h;then else patchlevel=0 fi -echo "(You have $package $baserev PL$patchlevel.)" +if $test -r $rsrc/revision.h;then + revision=`awk \ + '/^#[ ]*define[ ][ ]*REVISION/ {print $3}' \ + < $rsrc/revision.h` +else + revision=0 +fi +case "$revision" in +0) echo "(You have $package $baserev PL$patchlevel.)" ;; +*) + case "$patchlevel" in + 0) echo "(You have $package $baserev-$revision)";; + *) echo "(You have $package $baserev-$revision PL$patchlevel)";; + esac + ;; +esac : determine perl absolute location case "$perlpath" in @@ -4474,6 +4506,7 @@ prefix='$prefix' prefixexp='$prefixexp' privlib='$privlib' privlibexp='$privlibexp' +revision='$revision' rm='$rm' rmail='$rmail' run='$run' @@ -4520,6 +4553,8 @@ EOT : add special variables $test -f $src/patchlevel.h && \ awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh +$test -f $src/revision.h && \ +awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/revision.h >>config.sh echo "CONFIG=true" >>config.sh : propagate old symbols diff --git a/Jmakefile b/Jmakefile index 30e7318..1e1f1c7 100644 --- a/Jmakefile +++ b/Jmakefile @@ -31,3 +31,9 @@ AddedByConfigure(install) InstallManPage(dist,$(MANSRC)) +all:: revision.h + +.FORCE: + +revision.h: .FORCE + $(TOP)/bin/svn-revision $(TOP) $@ diff --git a/MANIFEST b/MANIFEST index d7dab2d..b832fc5 100644 --- a/MANIFEST +++ b/MANIFEST @@ -18,6 +18,7 @@ bin/manilist.man Manual page for manilist bin/packinit.SH Creates a .package file describing your package bin/packinit.man Manual page for packinit bin/perload Build dynamically loaded perl scripts +bin/svn-revision Updates the top "revision.h" file if needed dist.man Introduction to dist install.SH Installation script with a BSD-like syntax jmake/ Where makefile generator is stored @@ -612,3 +613,4 @@ pl/rcsargs.pl Perl library to expand rcs filename lists pl/snapshot.pl Perl library to parse RCS snapshot file pl/tilde.pl Perl library to perform ~name expansion pl/users.pl Perl library to parse users file +revision.h The current SVN revision number for dist diff --git a/Makefile.SH b/Makefile.SH index 725cf8c..29cd11c 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -1,4 +1,4 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-17] : $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ case $CONFIG in @@ -56,7 +56,7 @@ SUBDIRS = bin mcon jmake pat kit lib $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ +# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ ######################################################################## # Start of Jmakefile @@ -104,6 +104,13 @@ local_install.man:: dist.man local_deinstall.man:: $(RM) $(INSTALL_PREFIX)$(MANSRC)/dist.$(L) +all:: revision.h + +.FORCE: + +revision.h: .FORCE + $(TOP)/bin/svn-revision $(TOP) $@ + ######################################################################## # Common rules for all Makefiles -- do not edit diff --git a/jmake/fixcpp.SH b/jmake/fixcpp.SH index 4bbc69b..f3e8db5 100755 --- a/jmake/fixcpp.SH +++ b/jmake/fixcpp.SH @@ -55,6 +55,7 @@ $startperl \$cpp = '$cpp_trad'; \$version = '$VERSION'; \$patchlevel = '$PATCHLEVEL'; +\$revision = '$REVISION'; !GROK!THIS! $spitshell >>fixcpp <<'!NO!SUBS!' diff --git a/jmake/jmake.SH b/jmake/jmake.SH index bdb5de7..b6d1277 100755 --- a/jmake/jmake.SH +++ b/jmake/jmake.SH @@ -71,6 +71,7 @@ $startperl \$cpp = '$cpp'; \$version = '$VERSION'; \$patchlevel = '$PATCHLEVEL'; +\$revision = '$REVISION'; !GROK!THIS! $spitshell >>jmake <<'!NO!SUBS!' @@ -305,7 +306,7 @@ line: for ($i = 0; $i <= $#makefile; $i++) { # Process regular line to be generated in Makefile.SH - s//[jmake $version PL$patchlevel]/; + s//[jmake $version-$revision]/; # Lines starting with ?SYMBOL: (resp. %SYMBOL:) are to be processed # only if SYMBOL is defined (resp. undefined). diff --git a/mcon/U/Head.U b/mcon/U/Head.U index bb1464b..7667c8a 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -88,7 +88,7 @@ # $Id$ # -# Generated on [metaconfig PL] +# Generated on [metaconfig -] cat >c1$$ <>config.sh +$test -f $src/revision.h && \ +awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/revision.h >>config.sh echo "CONFIG=true" >>config.sh : propagate old symbols diff --git a/mcon/U/Options.U b/mcon/U/Options.U index a38f565..0508d27 100644 --- a/mcon/U/Options.U +++ b/mcon/U/Options.U @@ -275,7 +275,7 @@ while test $# -gt 0; do esac shift ;; - -V) echo "$me generated by metaconfig PL." >&2 + -V) echo "$me generated by metaconfig -." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; diff --git a/mcon/U/patchlevel.U b/mcon/U/patchlevel.U index 459f87f..18a3f98 100644 --- a/mcon/U/patchlevel.U +++ b/mcon/U/patchlevel.U @@ -15,15 +15,20 @@ ?RCS: Revision 3.0 1993/08/18 12:09:31 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:patchlevel: package baserev test rsrc +?MAKE:patchlevel revision: package baserev test rsrc ?MAKE: -pick add $@ %< ?S:patchlevel: ?S: The patchlevel level of this package. ?S: The value of patchlevel comes from the patchlevel.h file. ?S:. -: get the patchlevel +?S:revision: +?S: The revision / build of this package. +?S: The value is derived from the REVISION define in the revision.h file. +?S: When revision is defined, the patch level should be ignored if 0. +?S:. +: get the patchlevel / revision echo " " -echo "Getting the current patchlevel..." >&4 +echo "Getting the current patchlevel / revision..." >&4 if $test -r $rsrc/patchlevel.h;then patchlevel=`awk \ '/^#[ ]*define[ ][ ]*PATCHLEVEL/ {print $3}' \ @@ -31,5 +36,20 @@ if $test -r $rsrc/patchlevel.h;then else patchlevel=0 fi -echo "(You have $package $baserev PL$patchlevel.)" +if $test -r $rsrc/revision.h;then + revision=`awk \ + '/^#[ ]*define[ ][ ]*REVISION/ {print $3}' \ + < $rsrc/revision.h` +else + revision=0 +fi +case "$revision" in +0) echo "(You have $package $baserev PL$patchlevel.)" ;; +*) + case "$patchlevel" in + 0) echo "(You have $package $baserev-$revision)";; + *) echo "(You have $package $baserev-$revision PL$patchlevel)";; + esac + ;; +esac diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH index 44a6ae5..1275b75 100755 --- a/mcon/man/mconfig.SH +++ b/mcon/man/mconfig.SH @@ -1455,7 +1455,11 @@ your \fI.package\fR. The name of the package, as derived from your \fI.package\fR file. .TP -The patch level of the \fImetaconfig\fR program. +The patch level of the \fImetaconfig\fR program (deprecated in favor +of ). +.TP + +The SVN revision level of the \fImetaconfig\fR program. .TP The version number of the \fImetaconfig\fR program. diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index adcf0a2..94ade5f 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -58,6 +58,7 @@ $startperl \$MC = '$privlib'; \$version = '$VERSION'; \$patchlevel = '$PATCHLEVEL'; +\$revision = '$REVISION'; \$grep = '$grep'; !GROK!THIS! @@ -78,7 +79,7 @@ chdir $WD || die "Can't chdir back to $WD: $!\n"; ++$opt_M if -f 'confmagic.h'; # Force -M if confmagic.h already there if ($opt_V) { - print STDERR "metaconfig $version PL$patchlevel\n"; + print STDERR "metaconfig $version-$revision\n"; exit 0; } elsif ($opt_h) { &usage; diff --git a/mcon/mlint.SH b/mcon/mlint.SH index 62d4021..9e0cbf6 100755 --- a/mcon/mlint.SH +++ b/mcon/mlint.SH @@ -51,6 +51,7 @@ $startperl \$MC = '$privlib'; \$version = '$VERSION'; \$patchlevel = '$PATCHLEVEL'; +\$revision = '$REVISION'; \$grep = '$grep'; !GROK!THIS! @@ -60,7 +61,7 @@ require 'getopts.pl'; &usage unless &Getopts("hklVL:"); if ($opt_V) { - print STDERR "metalint $version PL$patchlevel\n"; + print STDERR "metalint $version-$revision\n"; exit 0; } elsif ($opt_h) { &usage; diff --git a/mcon/mxref.SH b/mcon/mxref.SH index 51ea87f..b6d8dcb 100755 --- a/mcon/mxref.SH +++ b/mcon/mxref.SH @@ -51,6 +51,7 @@ $startperl \$MC = '$privlib'; \$version = '$VERSION'; \$patchlevel = '$PATCHLEVEL'; +\$revision = '$REVISION'; \$grep = '$grep'; !GROK!THIS! @@ -68,7 +69,7 @@ chop($MC = `pwd`); # Real metaxref lib path (no symbolic links) chdir $WD || die "Can't chdir back to $WD: $!\n"; if ($opt_V) { - print STDERR "metaxref $version PL$patchlevel\n"; + print STDERR "metaxref $version-$revision\n"; exit 0; } elsif ($opt_h) { &usage; diff --git a/mcon/pl/configure.pl b/mcon/pl/configure.pl index f78925f..a5aed29 100644 --- a/mcon/pl/configure.pl +++ b/mcon/pl/configure.pl @@ -110,7 +110,9 @@ sub process_command { s//$package/g; s//$maintloc/g; s//$version/g; # This is metaconfig's version - s//$patchlevel/g; # And patchlevel information + s//$revision/g; # And revision information + warn "\"$file\": usage of is deprecated\n" + if s//$patchlevel/g; s//$date/g; s//$baserev/g; s/<\$(\w+)>/eval("\$$1")/ge; # <$var> -> $var substitution diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index ba5c407..c790011 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -115,6 +115,7 @@ sub init_extraction { MAINTLOC VERSION PATCHLEVEL + REVISION DATE BASEREV ); -- cgit v1.2.3 From d18e773aef5058210633f2b99715aca5825840d8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 14 Jun 2008 20:48:34 +0000 Subject: Panic if a routine is defined more than once. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@26 2592e710-e01b-42a5-8df0-11608a6cc53d --- bin/perload | 2 ++ 1 file changed, 2 insertions(+) diff --git a/bin/perload b/bin/perload index e71cbdd..a0ed31c 100755 --- a/bin/perload +++ b/bin/perload @@ -117,6 +117,8 @@ while (<>) { $fn_package = $current_package; $fn_basename = $function; } + die "line $.: duplicate routine ${fn_package}::$fn_basename\n" + if $Seen{"${fn_package}::$fn_basename"}++; # Keep leading function comment foreach (@Comment) { push(@Data, $_) unless $autoload; -- cgit v1.2.3 From 6bd65726a637ed514792adf0f28d7ea0675baa19 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 14 Jun 2008 20:50:12 +0000 Subject: Make sure Instruct depends on Begin to move Begin ahead of any question asked by Configure. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@27 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 6 +++--- Makefile.SH | 2 +- mcon/U/Instruct.U | 2 +- revision.h | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Configure b/Configure index 1fb9e5f..cd1dd35 100755 --- a/Configure +++ b/Configure @@ -16,9 +16,9 @@ # The dist package (which contains metaconfig) is available via SVN: # svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist -# $Id: Head.U 6 2006-08-25 22:21:46Z rmanfredi $ +# $Id: Head.U 25 2008-05-28 11:19:25Z rmanfredi $ # -# Generated on Wed May 28 13:11:20 CEST 2008 [metaconfig 3.5-17] +# Generated on Wed May 28 13:22:26 CEST 2008 [metaconfig 3.5-25] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-25." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; diff --git a/Makefile.SH b/Makefile.SH index 29cd11c..4915130 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -61,7 +61,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ +# $X-Id: Jmakefile 25 2008-05-28 11:19:25Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # diff --git a/mcon/U/Instruct.U b/mcon/U/Instruct.U index deccaf8..37d8afe 100644 --- a/mcon/U/Instruct.U +++ b/mcon/U/Instruct.U @@ -27,7 +27,7 @@ ?X: isn't going to go shooting off the top of the screen, and we don't want ?X: to panic them yet. ?X: -?MAKE:Instruct: Myread Configdir contains +?MAKE:Instruct: Begin Myread Configdir contains ?MAKE: -pick wipe $@ %< ?T:user needman firsttime : general instructions diff --git a/revision.h b/revision.h index 20f4e73..cab2847 100644 --- a/revision.h +++ b/revision.h @@ -1,7 +1,7 @@ /* - * THIS FILE IS AUTOMATICALLY GENERATED -- DO NOT EDIT ME + * THIS FILE IS AUTOMATICALLY GENERATED -- DO NOT EDIT * * Generated by ./bin/svn-revision. */ -#define REVISION 17 +#define REVISION 25 -- cgit v1.2.3 From dbfaaf1b52fe5bc9e401722842b071d56c79785f Mon Sep 17 00:00:00 2001 From: cbiere Date: Mon, 16 Jun 2008 18:04:21 +0000 Subject: * Use the preprocessor output to detect the GCC version instead of executing the compiled binary which is unsuitable for cross-compiling. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@28 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/gccvers.U | 32 ++++++++++++-------------------- 1 file changed, 12 insertions(+), 20 deletions(-) diff --git a/mcon/U/gccvers.U b/mcon/U/gccvers.U index b7b42fa..6d05184 100644 --- a/mcon/U/gccvers.U +++ b/mcon/U/gccvers.U @@ -11,7 +11,7 @@ ?RCS: Copyright (c) 2000, Jarkko Hietaniemi ?RCS: ?MAKE:gccversion gccosandvers: cat cpp rm +cc \ - Myread Guess Options Oldconfig Loc osname osvers grep run ccname + Myread Guess Options Oldconfig Loc osname osvers grep ccname ?MAKE: -pick add $@ %< ?S:gccversion: ?S: If GNU cc (gcc) is used, this variable holds '1' or '3' (for instance) @@ -31,20 +31,21 @@ echo " " echo "Checking for GNU cc in disguise and/or its version number..." >&4 $cat >try.c < -int main() { +int main(void) { #ifdef __GNUC__ -#ifdef __VERSION__ - printf("%s\n", __VERSION__); -#else - printf("%s\n", "1"); +gcc_version_major __GNUC__ +#ifdef __GNUC_MINOR__ +gcc_version_minor __GNUC__ +#endif +#ifdef __GNUC_PATCHLEVEL__ +gcc_version_patchlevel __GNUC_PATCHLEVEL__ #endif #endif - exit(0); } EOM -if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then - gccversion=`$run ./try` +if $cc -E try.c > try 2>&1 +then + gccversion=`sed -n 's/^gcc_version_major[^0-9]*//p' try` case "$gccversion" in '') echo "You are not using GNU cc." ;; *) echo "You are using GNU cc $gccversion." @@ -52,16 +53,7 @@ if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then ;; esac else - echo " " - echo "*** WHOA THERE!!! ***" >&4 - echo " Your C compiler \"$cc\" doesn't seem to be working!" >&4 -?X: using -K will prevent aborting--maybe they're cross compiling? - case "$knowitall" in - '') - echo " You'd better start hunting for one and let me know about it." >&4 - exit 1 - ;; - esac + gccversion='' fi $rm -f try try.* case "$gccversion" in -- cgit v1.2.3 From 16693ac4e750629ba876c29b55cd242c350e3fd6 Mon Sep 17 00:00:00 2001 From: cbiere Date: Mon, 16 Jun 2008 18:11:00 +0000 Subject: * Append $ccflags so that it can override the defaults assuming the compiler picks the last choice as GCC does. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@29 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/ccflags.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index 0deb0c3..b00a557 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -197,7 +197,7 @@ else fi case "$hint" in -default|recommended) dflt="$ccflags $dflt" ;; +default|recommended) dflt="$dflt $ccflags" ;; *) dflt="$ccflags";; esac -- cgit v1.2.3 From 862f3dc3b64fcff2a9e91d616b1566905443a4e9 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 28 Oct 2009 07:45:28 +0000 Subject: Make sure the "all" target is listed first in all the Makefiles we produce. That includes not specifying any "hidden" targets before "all". git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@30 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.tmpl | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index 80549b5..df1a189 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -135,11 +135,15 @@ $spitshell >>Makefile <<'!NO!SUBS!' %MKDEP:|skip /* Skip if no depend target */ ;######################################################################## ;# Force 'make depend' to be performed first -- do not edit +/* + * The "all" target must appear first. Some "make" programs will otherwise + * default to the .FORCE_DEPEND target if it was listed first, despite it + * starting with a leading dot. + */ +all:: .FORCE_DEPEND .FORCE_DEPEND:: -all:: .FORCE_DEPEND - -skip /* Depend target */ ;######################################################################## ;# Start of Jmakefile -- cgit v1.2.3 From 45f34b62e4f5cc108e06430cb5dffeba210fab9a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 6 Mar 2010 20:15:24 +0000 Subject: Fixed perl startup line since version 5.10 does not support "$*" any longer. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@31 2592e710-e01b-42a5-8df0-11608a6cc53d --- bin/manilist.SH | 2 +- bin/packinit.SH | 2 +- jmake/bindex.SH | 2 +- jmake/fixcpp.SH | 2 +- jmake/jmake.SH | 2 +- kit/kitpost.SH | 2 +- kit/kitsend.SH | 2 +- kit/makedist.SH | 2 +- kit/manifake.SH | 2 +- pat/pat.SH | 2 +- pat/patbase.SH | 2 +- pat/patcil.SH | 2 +- pat/patclean.SH | 2 +- pat/patcol.SH | 2 +- pat/patdiff.SH | 2 +- pat/patftp.SH | 2 +- pat/patlog.SH | 2 +- pat/patmake.SH | 2 +- pat/patname.SH | 2 +- pat/patnotify.SH | 2 +- pat/patpost.SH | 2 +- pat/patsend.SH | 2 +- pat/patsnap.SH | 2 +- revision.h | 2 +- 24 files changed, 24 insertions(+), 24 deletions(-) diff --git a/bin/manilist.SH b/bin/manilist.SH index 1bb8f3f..85c7b21 100755 --- a/bin/manilist.SH +++ b/bin/manilist.SH @@ -17,7 +17,7 @@ esac echo "Extracting bin/manilist (with variable substitutions)" $spitshell >manilist <packinit <bindex <>bindex <<'!NO!SUBS!' - eval 'exec perl -S $0 "$@"' + eval 'exec perl -S $0 ${1+"$@"}' if $runnning_under_some_shell; # $Id$ diff --git a/jmake/fixcpp.SH b/jmake/fixcpp.SH index f3e8db5..d5b640f 100755 --- a/jmake/fixcpp.SH +++ b/jmake/fixcpp.SH @@ -17,7 +17,7 @@ esac echo "Extracting jmake/fixcpp (with variable substitutions)" $spitshell >fixcpp <jmake <kitpost <kitsend <makedist <manifake <pat <patbase <patcil <patclean <patcol <patdiff <patftp <patlog <patmake <patname <patnotify <patpost <patsend <patsnap < Date: Mon, 22 Nov 2010 17:33:04 +0000 Subject: Added lookup for nawk. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@32 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Loc.U | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index 6afc8f0..c6eb9bb 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -64,14 +64,14 @@ ?MAKE:Loc awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ - make mkdir more mv nm nroff perl pg pmake pr rm rmail sed sendmail \ + make mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee test touch tr troff \ uname uniq uuname vi zcat zip: eunicefix n c startsh Instruct Warn ?MAKE: -pick weed $@ %< ?LINT: describe awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ - make mkdir more mv nm nroff perl pg pmake pr rm rmail sed sendmail \ + make mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee test touch tr troff \ uname uniq uuname vi zcat zip ?V::pth loclist trylist @@ -186,6 +186,7 @@ trylist=" ?mailx:mailx ?make:make ?more:more +?nawk:nawk ?nm:nm ?nroff:nroff ?perl:perl @@ -211,7 +212,7 @@ trylist=" ?LINT: set awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo emacs expr find flex \ gmake gzip grep inews ksh less line lint lp lpr ls mail mailx \ - mkdir more mv nm nroff perl pg pmake pr rm rmail sed sendmail \ + mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee touch tr troff \ uname uniq uuname vi zcat zip pth=`echo $PATH | sed -e "s/$p_/ /g"` -- cgit v1.2.3 From 194d1db97053d853d5f81c362c461d71c05ea80e Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 22 Nov 2010 17:34:39 +0000 Subject: Taught metalint about "${var:" type syntax. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@33 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/pl/lint.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index c790011..1e435bf 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -778,10 +778,10 @@ sub p_body { } } } - # Now look at the shell variables used: can be $var or ${var} + # Now look at the shell variables used: can be $var or ${var} or ${var: local($var); local($line) = $_; - while ($check_vars && s/\$\{?(\w+)\}?/$1/) { + while ($check_vars && s/\$\{?(\w+)[\}:]?/$1/) { $var = $1; next if $var =~ /^\d+/; # Ignore $1 and friends # Record variable as undeclared but do not issue a message right now. -- cgit v1.2.3 From 13158f86e3904284dce3dad36b64f07414459551 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 27 Nov 2010 11:55:39 +0000 Subject: Applied mega patch from Christian Biere to greatly improve feature detection and make a huge step towards better support for cross-compiling. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@34 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/Checkcc.U | 2 +- mcon/U/Cross.U | 3 +- mcon/U/Head.U | 40 +--------------------- mcon/U/Loc.U | 6 ++-- mcon/U/Trylink.U | 61 +++++++++++++++++++++++++++++++++ mcon/U/ccflags.U | 3 +- mcon/U/cpp_stuff.U | 2 +- mcon/U/d_NeWS.U | 1 + mcon/U/d_access.U | 19 +++++++++-- mcon/U/d_alarm.U | 18 ++++++++-- mcon/U/d_bcmp.U | 16 +++++++-- mcon/U/d_bcopy.U | 15 +++++++-- mcon/U/d_brokstat.U | 2 +- mcon/U/d_bsdjmp.U | 1 - mcon/U/d_bzero.U | 15 +++++++-- mcon/U/d_cbrt.U | 15 +++++++-- mcon/U/d_chown.U | 21 ++++++++++-- mcon/U/d_chroot.U | 18 ++++++++-- mcon/U/d_chsize.U | 15 +++++++-- mcon/U/d_ckeypad.U | 4 ++- mcon/U/d_closedir.U | 22 +++++++++--- mcon/U/d_crypt.U | 74 +++++++++++++++++++++------------------- mcon/U/d_ctermid.U | 15 +++++++-- mcon/U/d_cuserid.U | 15 +++++++-- mcon/U/d_difftime.U | 16 +++++++-- mcon/U/d_dlerror.U | 27 ++++++++------- mcon/U/d_dlopen.U | 27 ++++++++------- mcon/U/d_drem.U | 15 +++++++-- mcon/U/d_dup2.U | 18 ++++++++-- mcon/U/d_fchmod.U | 20 +++++++++-- mcon/U/d_fchown.U | 21 ++++++++++-- mcon/U/d_fcntl.U | 22 ++++++++++-- mcon/U/d_ffs.U | 15 +++++++-- mcon/U/d_fgetpos.U | 16 +++++++-- mcon/U/d_flexfnam.U | 14 ++++---- mcon/U/d_flock.U | 18 ++++++++-- mcon/U/d_fmod.U | 15 +++++++-- mcon/U/d_fork.U | 19 +++++++++-- mcon/U/d_fsetpos.U | 16 +++++++-- mcon/U/d_ftime.U | 44 +++++++++++++++++------- mcon/U/d_ftrncate.U | 20 +++++++++-- mcon/U/d_gconvert.U | 2 +- mcon/U/d_getgrps.U | 20 +++++++++-- mcon/U/d_gethbynm.U | 15 +++++++-- mcon/U/d_gethent.U | 15 +++++++-- mcon/U/d_gethid.U | 18 ++++++++-- mcon/U/d_getlogin.U | 18 ++++++++-- mcon/U/d_getopt.U | 20 +++++++++-- mcon/U/d_getpagsz.U | 33 +++++++++++++----- mcon/U/d_getpgid.U | 19 +++++++++-- mcon/U/d_getpgrp.U | 93 ++++++++++++++++++-------------------------------- mcon/U/d_getpgrp2.U | 19 +++++++++-- mcon/U/d_getppid.U | 19 +++++++++-- mcon/U/d_getprior.U | 21 ++++++++++-- mcon/U/d_getpwent.U | 21 ++++++------ mcon/U/d_getwd.U | 26 ++++++++------ mcon/U/d_htonl.U | 41 +++++++++-------------- mcon/U/d_inetaton.U | 19 +++++++++-- mcon/U/d_isascii.U | 30 +++++------------ mcon/U/d_itimer.U | 19 +++++++++-- mcon/U/d_killpg.U | 17 ++++++++-- mcon/U/d_link.U | 18 ++++++++-- mcon/U/d_locconv.U | 18 ++++++++-- mcon/U/d_lockf.U | 23 +++++++++++-- mcon/U/d_lstat.U | 19 +++++++++-- mcon/U/d_mblen.U | 19 +++++++++-- mcon/U/d_mbstowcs.U | 19 +++++++++-- mcon/U/d_mbtowc.U | 20 +++++++++-- mcon/U/d_memalign.U | 19 +++++++++-- mcon/U/d_memccpy.U | 17 ++++++++-- mcon/U/d_memchr.U | 17 ++++++++-- mcon/U/d_memcmp.U | 15 +++++++-- mcon/U/d_memcpy.U | 16 +++++++-- mcon/U/d_memmove.U | 16 +++++++-- mcon/U/d_memset.U | 17 ++++++++-- mcon/U/d_mkdir.U | 20 +++++++++-- mcon/U/d_mkfifo.U | 20 +++++++++-- mcon/U/d_mktime.U | 16 +++++++-- mcon/U/d_mmap.U | 27 +++++++++++++-- mcon/U/d_msem_lck.U | 19 +++++++++-- mcon/U/d_msgctl.U | 18 ++++++++-- mcon/U/d_msgget.U | 19 +++++++++-- mcon/U/d_msgrcv.U | 21 ++++++++++-- mcon/U/d_msgsnd.U | 18 ++++++++-- mcon/U/d_msync.U | 23 +++++++++++-- mcon/U/d_munmap.U | 20 +++++++++-- mcon/U/d_nice.U | 18 ++++++++-- mcon/U/d_open3.U | 2 +- mcon/U/d_pathconf.U | 37 +++++++++++++++++--- mcon/U/d_pause.U | 18 ++++++++-- mcon/U/d_perror.U | 14 ++++++-- mcon/U/d_pipe.U | 18 ++++++++-- mcon/U/d_poll.U | 33 ++++++++++++++++-- mcon/U/d_popen.U | 16 +++++++-- mcon/U/d_pread.U | 23 +++++++++++-- mcon/U/d_preadv.U | 23 +++++++++++-- mcon/U/d_psignal.U | 15 +++++++-- mcon/U/d_pwrite.U | 23 +++++++++++-- mcon/U/d_pwritev.U | 23 +++++++++++-- mcon/U/d_rdchk.U | 14 ++++++-- mcon/U/d_readdir.U | 74 ++++++++++++++++++++++++++++++++++------ mcon/U/d_readlink.U | 20 +++++++++-- mcon/U/d_rename.U | 15 +++++++-- mcon/U/d_rmdir.U | 18 ++++++++-- mcon/U/d_rusage.U | 22 ++++++++++-- mcon/U/d_sbrk.U | 18 ++++++++-- mcon/U/d_scandir.U | 32 ++++++++++++++++-- mcon/U/d_select.U | 17 ++++++++-- mcon/U/d_semctl.U | 26 ++++++++++++-- mcon/U/d_semget.U | 19 +++++++++-- mcon/U/d_semop.U | 22 ++++++++++-- mcon/U/d_setegid.U | 20 +++++++++-- mcon/U/d_seteuid.U | 20 +++++++++-- mcon/U/d_setgrps.U | 20 +++++++++-- mcon/U/d_setlnbuf.U | 14 ++++++-- mcon/U/d_setlocale.U | 19 +++++++++-- mcon/U/d_setpgid.U | 20 +++++++++-- mcon/U/d_setpgrp.U | 94 ++++++++++++++++++++------------------------------- mcon/U/d_setpgrp2.U | 20 +++++++++-- mcon/U/d_setprior.U | 21 ++++++++++-- mcon/U/d_setregid.U | 40 +++++++++++++++++++--- mcon/U/d_setreuid.U | 40 +++++++++++++++++++--- mcon/U/d_setrgid.U | 20 +++++++++-- mcon/U/d_setruid.U | 20 +++++++++-- mcon/U/d_setsid.U | 19 +++++++++-- mcon/U/d_sgndchr.U | 30 ++++++----------- mcon/U/d_shmat.U | 95 +++++++++++++++++++++++++++++++++++++--------------- mcon/U/d_shmctl.U | 18 ++++++++-- mcon/U/d_shmdt.U | 16 +++++++-- mcon/U/d_shmget.U | 20 +++++++++-- mcon/U/d_sigaction.U | 37 ++++++-------------- mcon/U/d_sigblock.U | 15 +++++++-- mcon/U/d_sighold.U | 15 +++++++-- mcon/U/d_siglist.U | 21 ++++++------ mcon/U/d_sigsetjmp.U | 2 -- mcon/U/d_sigsetmk.U | 21 ++++++------ mcon/U/d_sigvec.U | 61 +++++++++++++++++++++------------ mcon/U/d_socket.U | 15 +++++++-- mcon/U/d_stat.U | 19 +++++++++-- mcon/U/d_strccmp.U | 16 +++++++-- mcon/U/d_strchr.U | 62 ++++++++++++++-------------------- mcon/U/d_strcoll.U | 15 +++++++-- mcon/U/d_strcspn.U | 15 +++++++-- mcon/U/d_strdup.U | 16 +++++++-- mcon/U/d_strftime.U | 17 ++++++++-- mcon/U/d_strstr.U | 15 +++++++-- mcon/U/d_strtod.U | 19 +++++++++-- mcon/U/d_strtok.U | 15 +++++++-- mcon/U/d_strtol.U | 19 +++++++++-- mcon/U/d_strtoul.U | 19 +++++++++-- mcon/U/d_strxfrm.U | 16 +++++++-- mcon/U/d_symlink.U | 18 ++++++++-- mcon/U/d_syscall.U | 19 +++++++++-- mcon/U/d_sysconf.U | 18 ++++++++-- mcon/U/d_syslog.U | 22 ++++++------ mcon/U/d_system.U | 18 ++++++++-- mcon/U/d_table.U | 16 +++++++-- mcon/U/d_tcgtpgrp.U | 19 +++++++++-- mcon/U/d_tcstpgrp.U | 20 +++++++++-- mcon/U/d_truncate.U | 20 +++++++++-- mcon/U/d_tzname.U | 22 ++++++------ mcon/U/d_ulimit.U | 16 +++++++-- mcon/U/d_umask.U | 19 +++++++++-- mcon/U/d_usleep.U | 18 ++++++++-- mcon/U/d_vfork.U | 21 +++++++++--- mcon/U/d_wait3.U | 27 +++++++++++++-- mcon/U/d_wait4.U | 27 +++++++++++++-- mcon/U/d_waitpid.U | 22 ++++++++++-- mcon/U/d_wcstombs.U | 20 +++++++++-- mcon/U/d_wctomb.U | 24 +++++++++++-- mcon/U/gccvers.U | 3 +- mcon/U/i_dbm.U | 52 ++++++++++++++++++---------- mcon/U/i_gdbm.U | 33 +++++++----------- mcon/U/i_math.U | 20 ++++++++++- mcon/U/i_ndbm.U | 34 +++++++++---------- mcon/U/i_string.U | 2 +- mcon/U/i_termio.U | 31 +++++++++++------ mcon/U/i_varhdr.U | 2 +- mcon/U/libpth.U | 3 +- mcon/U/mkdep.U | 11 +++--- mcon/U/models.U | 2 +- mcon/U/nblock_io.U | 2 +- mcon/U/sbrksmart.U | 2 +- revision.h | 2 +- 185 files changed, 2871 insertions(+), 996 deletions(-) create mode 100644 mcon/U/Trylink.U diff --git a/MANIFEST b/MANIFEST index b832fc5..8b72353 100644 --- a/MANIFEST +++ b/MANIFEST @@ -122,6 +122,7 @@ mcon/U/Rcs.U Some stupid redefinitions to keep RCS happy mcon/U/Setvar.U Set a variable with some sanity checks mcon/U/Signal.U Utilities for sig_name.U mcon/U/Tr.U Builds a tr script to handle lower and upper classes +mcon/U/Trylink.U Compiles and links a test program mcon/U/Typedef.U Defines a typedef lookup function mcon/U/Unix.U Common UNIX settings and assumptions mcon/U/Warn.U Summarizes warnings emitted during Configure run diff --git a/mcon/U/Checkcc.U b/mcon/U/Checkcc.U index ac1b513..d1b6f02 100644 --- a/mcon/U/Checkcc.U +++ b/mcon/U/Checkcc.U @@ -85,7 +85,7 @@ EOM ?X: seemingly affect the compiling environment. $cat *.cbu >checktmp 2>/dev/null if $contains ccflags checktmp >/dev/null; then - ./warn <&4 <&4 ;; esac diff --git a/mcon/U/Head.U b/mcon/U/Head.U index 7667c8a..aa41021 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -49,7 +49,7 @@ ?MAKE:Head: ?MAKE: -pick wipe $@ %< ?V:PATH p_ _exe me newsh -?T:argv Id p paths OS2_SHELL DJGPP +?T:argv Id OS2_SHELL DJGPP ?T:inksh needksh avoidksh newsh changesh reason ?F:!* ?LINT:extern ENV CDPATH SHELL MACHTYPE @@ -145,44 +145,6 @@ if test -d c:/. ; then fi fi -?X: -?X: There are two schools of thoughts here. Some people correctly argue that -?X: the user has a better chance than we do of setting a reasonable PATH and -?X: others argue that Configure is the best place there is to set up a suitable -?X: PATH. Well, here we try to compromize by keeping the user's PATH and -?X: appending some directories which are known to work on some machine or the -?X: other. The rationale behind this being that a novice user might not have a -?X: proper environment variable set, and some directories like /etc (where -?X: chown is located on some BSD systems) may be missing--RAM. -?X: -?X: SVR4 adds an /opt directory for optional packages. Some sites use -?X: various permutations on /opt as opposed to /usr or /usr/local.-- ADO -?X: -?X: We only add directories that are not already in the PATH of the -?X: user and the directories must exist also. -?X: -: Proper PATH setting -paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin' -paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin" -paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin" -paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin" -paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb" -paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /usr/ccs/bin" -paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib" -paths="$paths /sbin /usr/sbin /usr/libexec" -paths="$paths /system/gnu_library/bin" - -for p in $paths -do - case "$p_$PATH$p_" in - *$p_$p$p_*) ;; - *) test -d $p && PATH=$PATH$p_$p ;; - esac -done - -PATH=.$p_$PATH -export PATH - : shall we be using ksh? inksh='' needksh='' diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index c6eb9bb..37f31ec 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -216,7 +216,7 @@ trylist=" shar sleep smail sort submit tail tar tbl tee touch tr troff \ uname uniq uuname vi zcat zip pth=`echo $PATH | sed -e "s/$p_/ /g"` -pth="$pth /lib /usr/lib" +pth="$pth /sbin /usr/sbin /lib /usr/lib /etc" for file in $loclist; do ?X: ?X: Allow them to -Dmake=pmake on the command line for instance... @@ -231,7 +231,7 @@ for file in $loclist; do if test -f "$xxx"; then : ok else - ./warn "no $xxx -- ignoring your setting for $file." + ./warn "no $xxx -- ignoring your setting for $file." 4>&4 xxx=`./loc $file $file $pth` fi ;; @@ -266,7 +266,7 @@ for file in $trylist; do if test -f "$xxx"; then : ok else - ./warn "no $xxx -- ignoring your setting for $file." + ./warn "no $xxx -- ignoring your setting for $file." 4>&4 xxx=`./loc $file $file $pth` fi ;; diff --git a/mcon/U/Trylink.U b/mcon/U/Trylink.U new file mode 100644 index 0000000..48536b4 --- /dev/null +++ b/mcon/U/Trylink.U @@ -0,0 +1,61 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?X: +?X: This unit tries to compile and link a test program. +?X: +?X: To use it, put the program to compile in try.c, then say: +?X: set d_func [optional cc flags to try in sequence] +?X: eval $trylink +?X: +?X: A log of all attempts is kept in the trylink.log file, within the UU +?X: directory (where Configure runs). This directory is only cleaned-up +?X: at the end of the Configure run, so do not supply -e to Configure in order +?X: to stop after the production of the config.sh file. +?X: +?MAKE:Trylink: Setvar Oldconfig cat rm test +cc +ccflags +ldflags +?MAKE: -pick add $@ %< +?LINT:define trylink +?V:trylink +?S:trylink: +?S: This shell variable is used internally by Configure to check +?S: wether a given function is defined or not. A typical use is: +?S: create try.c +?S: set d_func [optional cc flags to try in sequence] +?S: eval $trylink +?S: That will print a message, saying wether function was found or +?S: not and set d_func accordingly. +?S:. +?T:var file val nparams +: see whether the try.c file compiles and links +trylink=' +var=$1; +shift; +val=$undef; +file=trylink.log; +nparams=$#; +echo "--- $var ---" >> "$file"; +$cat try.c >> "$file"; +while :; do + if $cc $ccflags -o try try.c $ldflags $1 >> "$file" 2>&1; then + case "$nparams" in 0) ;; *) echo "==> OK with \"$1\"" >> "$file";; esac; + val=$define; + break; + fi; + if $test $# -lt 1; then + break; + fi; + echo "==> FAILED with \"$1\"" >> "$file"; + shift; +done; +$rm -rf try try.*; +echo "==> $var=$val" >> "$file"; +set $var; eval $setvar; +' + diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index b00a557..876af98 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -85,8 +85,7 @@ ?D:optimize='' ?INIT:: Possible local include directories to search. ?INIT:: Set locincpth to "" in a hint file to defeat local include searches. -?INIT:locincpth="/usr/local/include /opt/local/include /usr/gnu/include" -?INIT:locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include" +?INIT:locincpth="" ?INIT:: ?INIT:: no include file wanted by default ?INIT:inclwanted='' diff --git a/mcon/U/cpp_stuff.U b/mcon/U/cpp_stuff.U index 2473ef2..574b817 100644 --- a/mcon/U/cpp_stuff.U +++ b/mcon/U/cpp_stuff.U @@ -135,7 +135,7 @@ Hopefully, $package does not need this feature. EOM fi else - ./warn <&4 <try.c < +#endif +int main(void) +{ + static int ret; + ret |= access("path", 1); + return ret ? 0 : 1; +} +EOC +set d_access +eval $trylink : locate the flags for 'access()' case "$d_access" in diff --git a/mcon/U/d_alarm.U b/mcon/U/d_alarm.U index 589d125..690c004 100644 --- a/mcon/U/d_alarm.U +++ b/mcon/U/d_alarm.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:06:58 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_alarm: Inlibc +?MAKE:d_alarm: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_alarm: ?S: This variable conditionally defines the HAS_ALARM symbol, which @@ -28,6 +28,18 @@ ?H:. ?LINT:set d_alarm : see if alarm exists -set alarm d_alarm -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static unsigned ret; + ret |= alarm(1); + return ret ? 0 : 1; +} +EOC +set d_alarm +eval $trylink diff --git a/mcon/U/d_bcmp.U b/mcon/U/d_bcmp.U index ae2e4bd..25e9757 100644 --- a/mcon/U/d_bcmp.U +++ b/mcon/U/d_bcmp.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:42 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_bcmp: Inlibc +?MAKE:d_bcmp: Trylink cat ?MAKE: -pick add $@ %< ?S:d_bcmp: ?S: This variable conditionally defines the HAS_BCMP symbol if @@ -39,6 +39,16 @@ ?M:. ?LINT:set d_bcmp : see if bcmp exists -set bcmp d_bcmp -eval $inlibc +$cat >try.c < +int main(void) +{ + static int a, b, ret; + ret |= bcmp(&a, &b, sizeof(a)); + return ret ? 0 : 1; +} +EOC +set d_bcmp +eval $trylink + diff --git a/mcon/U/d_bcopy.U b/mcon/U/d_bcopy.U index 2ae3ad8..bfb85cc 100644 --- a/mcon/U/d_bcopy.U +++ b/mcon/U/d_bcopy.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:44 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_bcopy: Inlibc +?MAKE:d_bcopy: Trylink cat ?MAKE: -pick add $@ %< ?S:d_bcopy: ?S: This variable conditionally defines the HAS_BCOPY symbol if @@ -39,6 +39,15 @@ ?M:. ?LINT:set d_bcopy : see if bcopy exists -set bcopy d_bcopy -eval $inlibc +$cat >try.c < +int main(void) +{ + static int src, dst; + bcopy(&src, &dst, sizeof(dst)); + return 0; +} +EOC +set d_bcopy +eval $trylink diff --git a/mcon/U/d_brokstat.U b/mcon/U/d_brokstat.U index a330dba..241be29 100644 --- a/mcon/U/d_brokstat.U +++ b/mcon/U/d_brokstat.U @@ -33,7 +33,7 @@ : are stat macros sane? echo " " echo "Checking whether your stat() macros are broken..." -$cat >try.c <<'EOC' +$cat >try.c < #include diff --git a/mcon/U/d_bsdjmp.U b/mcon/U/d_bsdjmp.U index da2f496..60af75e 100644 --- a/mcon/U/d_bsdjmp.U +++ b/mcon/U/d_bsdjmp.U @@ -35,7 +35,6 @@ ?F:!set ?LINT:set d_bsdjmp : see if _setjmp and _longjmp exists -?X: We can't check for these symbols with Inlibc because of the leading "_" echo " " case "$d_bsdjmp" in '') diff --git a/mcon/U/d_bzero.U b/mcon/U/d_bzero.U index 6c7d87b..a44b34e 100644 --- a/mcon/U/d_bzero.U +++ b/mcon/U/d_bzero.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:46 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_bzero: Inlibc +?MAKE:d_bzero: Trylink cat ?MAKE: -pick add $@ %< ?S:d_bzero: ?S: This variable conditionally defines the HAS_BZERO symbol if @@ -39,6 +39,15 @@ ?M:. ?LINT:set d_bzero : see if bzero exists -set bzero d_bzero -eval $inlibc +$cat >try.c < +int main(void) +{ + static int dst; + bzero(&dst, sizeof(dst)); + return 0; +} +EOC +set d_bzero +eval $trylink diff --git a/mcon/U/d_cbrt.U b/mcon/U/d_cbrt.U index 11f8baa..a6537d2 100644 --- a/mcon/U/d_cbrt.U +++ b/mcon/U/d_cbrt.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:48 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_cbrt: Inlibc +?MAKE:d_cbrt: Trylink cat ?MAKE: -pick add $@ %< ?S:d_cbrt: ?S: This variable conditionally defines the CBRT symbol, which @@ -27,6 +27,15 @@ ?H:. ?LINT:set d_cbrt : see if cbrt exists -set cbrt d_cbrt -eval $inlibc +$cat >try.c < +int main(void) +{ + static double x, ret; + ret = 1.0 * cbrt(x); + return ret ? 0 : 1; +} +EOC +set d_cbrt '-lm' +eval $trylink diff --git a/mcon/U/d_chown.U b/mcon/U/d_chown.U index c0fff39..4669adb 100644 --- a/mcon/U/d_chown.U +++ b/mcon/U/d_chown.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:14 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_chown: Inlibc +?MAKE:d_chown: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_chown: ?S: This variable conditionally defines the HAS_CHOWN symbol, which @@ -28,6 +28,21 @@ ?H:. ?LINT:set d_chown : see if chown exists -set chown d_chown -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static uid_t uid; + static gid_t gid; + static int ret; + ret |= chown("path", uid, gid); + return ret ? 0 : 1; +} +EOC +set d_chown +eval $trylink diff --git a/mcon/U/d_chroot.U b/mcon/U/d_chroot.U index c31ef3c..fb88a7b 100644 --- a/mcon/U/d_chroot.U +++ b/mcon/U/d_chroot.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:17 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_chroot: Inlibc +?MAKE:d_chroot: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_chroot: ?S: This variable conditionally defines the HAS_CHROOT symbol, which @@ -28,6 +28,18 @@ ?H:. ?LINT:set d_chroot : see if chroot exists -set chroot d_chroot -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + ret |= chroot("path"); + return ret ? 0 : 1; +} +EOC +set d_chroot +eval $trylink diff --git a/mcon/U/d_chsize.U b/mcon/U/d_chsize.U index 236effb..c170496 100644 --- a/mcon/U/d_chsize.U +++ b/mcon/U/d_chsize.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:50 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_chsize: Inlibc +?MAKE:d_chsize: Trylink cat ?MAKE: -pick add $@ %< ?S:d_chsize: ?S: This variable conditionally defines the CHSIZE symbol, which @@ -27,6 +27,15 @@ ?H:. ?LINT:set d_chsize : see if chsize exists -set chsize d_chsize -eval $inlibc +$cat >try.c <&4 echo "to see if has the keypad() function." >&4 + ;; *) echo "Checking the curses library ($termlib) for the keypad() function..." >&4 $cat >c_keypad.c <<'EOCP' @@ -48,6 +49,7 @@ EOCP val=$undef echo "Your curses library doesn't appear to have the keypad() function." fi + ;; esac set d_ckeypad eval $setvar diff --git a/mcon/U/d_closedir.U b/mcon/U/d_closedir.U index 071f242..8a5bf9a 100644 --- a/mcon/U/d_closedir.U +++ b/mcon/U/d_closedir.U @@ -20,7 +20,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:21 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_closedir d_void_closedir: Inlibc i_dirent i_sysdir i_sysndir \ +?MAKE:d_closedir d_void_closedir: Trylink cat i_dirent i_sysdir i_sysndir \ cc ccflags ldflags libs Setvar rm ?MAKE: -pick add $@ %< ?S:d_closedir: @@ -46,8 +46,22 @@ ?F:!closedir ?LINT:set d_closedir d_void_closedir : see if closedir exists -set closedir d_closedir -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static DIR *dir; + dir = opendir("path"); + closedir(dir); + return 0; +} +EOC +set d_closedir +eval $trylink + @if VOID_CLOSEDIR || d_void_closedir ?X: The following contortions are designed so we can call closedir() @@ -84,7 +98,7 @@ case "$d_closedir" in #endif int main() { return closedir(opendir(".")); } EOM - if $cc $ccflags $ldflags -o closedir closedir.c $libs > /dev/null 2>&1; then + if $cc $ccflags -o closedir closedir.c $ldflags $libs > /dev/null 2>&1; then if ./closedir > /dev/null 2>&1 ; then echo "Yes, it does." val="$undef" diff --git a/mcon/U/d_crypt.U b/mcon/U/d_crypt.U index 84906e6..0dddaea 100644 --- a/mcon/U/d_crypt.U +++ b/mcon/U/d_crypt.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:52 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_crypt cryptlib: Loc test xlibpth libpth Csym Setvar _a Inlibc +?MAKE:d_crypt cryptlib: Loc test xlibpth libpth Setvar _a Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_crypt: ?S: This variable conditionally defines the CRYPT symbol, which @@ -36,41 +36,47 @@ ?LINT:set d_crypt ?T:val : see if crypt exists -echo " " -set crypt d_crypt -eval $inlibc + +$cat >try.c < +#endif +int main(void) +{ + static char ret; + ret |= *crypt("key", "salt"); + return ret ? 0 : 1; +} +EOC +set d_crypt -lcrypt +eval $trylink + case "$d_crypt" in -$define) cryptlib='' ;; -*) if set crypt val -f d_crypt; eval $csym; $val; then - echo 'crypt() found.' >&4 - val="$define" - cryptlib='' +$define) cryptlib='';; +*) + cryptlib=`./loc Slibcrypt$_a "" $xlibpth` + if $test -z "$cryptlib"; then + cryptlib=`./loc Mlibcrypt$_a "" $xlibpth` + else + cryptlib=-lcrypt + fi + if $test -z "$cryptlib"; then + cryptlib=`./loc Llibcrypt$_a "" $xlibpth` else - cryptlib=`./loc Slibcrypt$_a "" $xlibpth` - if $test -z "$cryptlib"; then - cryptlib=`./loc Mlibcrypt$_a "" $xlibpth` - else - cryptlib=-lcrypt - fi - if $test -z "$cryptlib"; then - cryptlib=`./loc Llibcrypt$_a "" $xlibpth` - else - cryptlib=-lcrypt - fi - if $test -z "$cryptlib"; then - cryptlib=`./loc libcrypt$_a "" $libpth` - else - cryptlib=-lcrypt - fi - if $test -z "$cryptlib"; then - echo 'crypt() NOT found.' >&4 - val="$undef" - else - val="$define" - fi + cryptlib=-lcrypt + fi + if $test -z "$cryptlib"; then + cryptlib=`./loc libcrypt$_a "" $libpth` + else + cryptlib=-lcrypt + fi + if $test -z "$cryptlib"; then + echo 'crypt() NOT found.' >&4 + val="$undef" + else + val="$define" fi - set d_crypt - eval $setvar - ;; +;; esac diff --git a/mcon/U/d_ctermid.U b/mcon/U/d_ctermid.U index 5f1f7ee..e07b1e0 100644 --- a/mcon/U/d_ctermid.U +++ b/mcon/U/d_ctermid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:54 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_ctermid: Inlibc +?MAKE:d_ctermid: Trylink cat ?MAKE: -pick add $@ %< ?S:d_ctermid: ?S: This variable conditionally defines CTERMID if ctermid() is @@ -26,6 +26,15 @@ ?H:. ?LINT:set d_ctermid : see if ctermid exists -set ctermid d_ctermid -eval $inlibc +$cat >try.c < +int main(void) +{ + static char term[L_ctermid], ret; + ret |= *ctermid(term); + return ret ? 0 : 1; +} +EOC +set d_ctermid +eval $trylink diff --git a/mcon/U/d_cuserid.U b/mcon/U/d_cuserid.U index a6d46c5..f2c6186 100644 --- a/mcon/U/d_cuserid.U +++ b/mcon/U/d_cuserid.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:25 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_cuserid: Inlibc +?MAKE:d_cuserid: Trylink cat ?MAKE: -pick add $@ %< ?S:d_cuserid: ?S: This variable conditionally defines the HAS_CUSERID symbol, which @@ -29,6 +29,15 @@ ?H:. ?LINT:set d_cuserid : see if cuserid exists -set cuserid d_cuserid -eval $inlibc +$cat >try.c < +int main(void) +{ + static char user[L_cuserid], ret; + ret |= *cuserid(user); + return ret ? 0 : 1; +} +EOC +set d_cuserid +eval $trylink diff --git a/mcon/U/d_difftime.U b/mcon/U/d_difftime.U index 364ccbc..d57e465 100644 --- a/mcon/U/d_difftime.U +++ b/mcon/U/d_difftime.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:31 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_difftime: Inlibc +?MAKE:d_difftime: Trylink cat ?MAKE: -pick add $@ %< ?S:d_difftime: ?S: This variable conditionally defines the HAS_DIFFTIME symbol, which @@ -28,6 +28,16 @@ ?H:. ?LINT:set d_difftime : see if difftime exists -set difftime d_difftime -eval $inlibc +$cat >try.c < +int main(void) +{ + static double ret; + static time_t t0, t1; + ret = difftime(t1, t0) * 1.0; + return ret ? 0 : 1; +} +EOC +set d_difftime +eval $trylink diff --git a/mcon/U/d_dlerror.U b/mcon/U/d_dlerror.U index a3bb995..dc06e61 100644 --- a/mcon/U/d_dlerror.U +++ b/mcon/U/d_dlerror.U @@ -17,7 +17,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:11:23 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_dlerror: Inlibc runnm +?MAKE:d_dlerror: Trylink cat i_dlfcn ?MAKE: -pick add $@ %< ?S:d_dlerror: ?S: This variable conditionally defines the HAS_DLERROR symbol, which @@ -30,17 +30,20 @@ ?C:. ?H:#$d_dlerror HAS_DLERROR /**/ ?H:. -?T: xxx_runnm ?LINT:set d_dlerror -?X: We don't permanently change runnm, but we do temporarily. -?LINT: change runnm : see if dlerror exists -?X: On NetBSD and FreeBSD, dlerror might be available, but it is in -?X: /usr/lib/crt0.o, not in any of the libraries. Therefore, do not -?X: use the nm extraction, but use a real compile and link test instead. -xxx_runnm="$runnm" -runnm=false -set dlerror d_dlerror -eval $inlibc -runnm="$xxx_runnm" +$cat >try.c < +#endif +int main(void) +{ + static char ret; + ret |= *dlerror(); + return ret ? 0 : 1; +} +EOC +set d_dlerror '-ldl' +eval $trylink diff --git a/mcon/U/d_dlopen.U b/mcon/U/d_dlopen.U index ad62c53..5c2a0b0 100644 --- a/mcon/U/d_dlopen.U +++ b/mcon/U/d_dlopen.U @@ -17,7 +17,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:34 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_dlopen: Inlibc runnm +?MAKE:d_dlopen: Trylink cat i_dlfcn ?MAKE: -pick add $@ %< ?S:d_dlopen: ?S: This variable conditionally defines the HAS_DLOPEN symbol, which @@ -29,17 +29,20 @@ ?C:. ?H:#$d_dlopen HAS_DLOPEN /**/ ?H:. -?T: xxx_runnm ?LINT:set d_dlopen -?X: We don't permanently change runnm, but we do temporarily. -?LINT: change runnm : see if dlopen exists -?X: On NetBSD and FreeBSD, dlopen is available, but it is in -?X: /usr/lib/crt0.o, not in any of the libraries. Therefore, do not -?X: use the nm extraction, but use a real compile and link test instead. -xxx_runnm="$runnm" -runnm=false -set dlopen d_dlopen -eval $inlibc -runnm="$xxx_runnm" +$cat >try.c < +#endif +int main(void) +{ + void *p; + p = dlopen("file", RTLD_GLOBAL); + return p ? 0 : 1; +} +EOC +set d_dlopen '-ldl' +eval $trylink diff --git a/mcon/U/d_drem.U b/mcon/U/d_drem.U index 4da2414..6752ab1 100644 --- a/mcon/U/d_drem.U +++ b/mcon/U/d_drem.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:12:14 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_drem: Inlibc +?MAKE:d_drem: Trylink cat ?MAKE: -pick add $@ %< ?S:d_drem: ?S: This variable conditionally defines the HAS_DREM symbol, which @@ -30,6 +30,15 @@ ?H:. ?LINT:set d_drem : see if drem exists -set drem d_drem -eval $inlibc +$cat >try.c < +int main(void) +{ + static double x, y, ret; + ret = 1.0 * drem(x, y); + return ret ? 0 : 1; +} +EOC +set d_drem '-lm' +eval $trylink diff --git a/mcon/U/d_dup2.U b/mcon/U/d_dup2.U index 070bfaa..19e1969 100644 --- a/mcon/U/d_dup2.U +++ b/mcon/U/d_dup2.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:56 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_dup2: Inlibc +?MAKE:d_dup2: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_dup2: ?S: This variable conditionally defines HAS_DUP2 if dup2() is @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_dup2 : see if dup2 exists -set dup2 d_dup2 -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int fd1, fd2, ret; + ret |= dup2(fd1, fd2); + return ret ? 0 : 1; +} +EOC +set d_dup2 +eval $trylink diff --git a/mcon/U/d_fchmod.U b/mcon/U/d_fchmod.U index 1939d78..e175989 100644 --- a/mcon/U/d_fchmod.U +++ b/mcon/U/d_fchmod.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:59 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_fchmod: Inlibc +?MAKE:d_fchmod: Trylink cat i_sysstat ?MAKE: -pick add $@ %< ?S:d_fchmod: ?S: This variable conditionally defines the HAS_FCHMOD symbol, which @@ -27,6 +27,20 @@ ?H:. ?LINT:set d_fchmod : see if fchmod exists -set fchmod d_fchmod -eval $inlibc +$cat >try.c < +#$i_sysstat I_SYS_STAT +#ifdef I_SYS_STAT +#include +#endif +int main(void) +{ + static int fd, ret; + static mode_t mode; + ret |= fchmod(fd, mode); + return ret ? 0 : 1; +} +EOC +set d_fchmod +eval $trylink diff --git a/mcon/U/d_fchown.U b/mcon/U/d_fchown.U index 0efbbe2..fb7f31c 100644 --- a/mcon/U/d_fchown.U +++ b/mcon/U/d_fchown.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:01 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_fchown: Inlibc +?MAKE:d_fchown: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_fchown: ?S: This variable conditionally defines the HAS_FCHOWN symbol, which @@ -27,6 +27,21 @@ ?H:. ?LINT:set d_fchown : see if fchown exists -set fchown d_fchown -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret, fd; + static uid_t uid; + static gid_t gid; + ret |= fchown(fd, uid, gid); + return ret ? 0 : 1; +} +EOC +set d_fchown +eval $trylink diff --git a/mcon/U/d_fcntl.U b/mcon/U/d_fcntl.U index 24ea9b2..6344500 100644 --- a/mcon/U/d_fcntl.U +++ b/mcon/U/d_fcntl.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:01 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_fcntl: Inlibc +?MAKE:d_fcntl: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_fcntl: ?S: This variable conditionally defines the HAS_FCNTL symbol, and indicates @@ -26,6 +26,22 @@ ?H:. ?LINT:set d_fcntl : see if this is an fcntl system -set fcntl d_fcntl -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +#include +int main(void) +{ + static int fd, ret; + ret |= fcntl(fd, F_DUPFD, 1); + ret |= fcntl(fd, F_GETFD); + ret |= fcntl(fd, F_GETFL); + return ret ? 0 : 1; +} +EOC +set d_fcntl +eval $trylink diff --git a/mcon/U/d_ffs.U b/mcon/U/d_ffs.U index cda3896..b9d0bb1 100644 --- a/mcon/U/d_ffs.U +++ b/mcon/U/d_ffs.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:03 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_ffs: Inlibc +?MAKE:d_ffs: Trylink cat ?MAKE: -pick add $@ %< ?S:d_ffs: ?S: This variable conditionally defines the HAS_FFS symbol, which @@ -28,6 +28,15 @@ ?H:. ?LINT:set d_ffs : see if ffs exists -set ffs d_ffs -eval $inlibc +$cat >try.c < +int main(void) +{ + static int i, ret; + ret |= ffs(i); + return ret ? 0 : 1; +} +EOC +set d_ffs +eval $trylink diff --git a/mcon/U/d_fgetpos.U b/mcon/U/d_fgetpos.U index 8553f96..6d08a75 100644 --- a/mcon/U/d_fgetpos.U +++ b/mcon/U/d_fgetpos.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1994/06/20 06:57:33 ram ?RCS: patch30: created ?RCS: -?MAKE:d_fgetpos: Inlibc +?MAKE:d_fgetpos: Trylink cat ?MAKE: -pick add $@ %< ?S:d_fgetpos: ?S: This variable conditionally defines HAS_FGETPOS if fgetpos() is @@ -26,6 +26,16 @@ ?H:. ?LINT:set d_fgetpos : see if fgetpos exists -set fgetpos d_fgetpos -eval $inlibc +$cat >try.c < +int main(void) +{ + static fpos_t pos; + static int ret; + ret |= fgetpos(stdout, &pos); + return ret ? 0 : 1; +} +EOC +set d_fgetpos +eval $trylink diff --git a/mcon/U/d_flexfnam.U b/mcon/U/d_flexfnam.U index 0f53a0b..4292fa0 100644 --- a/mcon/U/d_flexfnam.U +++ b/mcon/U/d_flexfnam.U @@ -24,8 +24,9 @@ ?C:. ?H:#$d_flexfnam FLEXFILENAMES /**/ ?H:. -?T:first second +?T:first second tmpdir ?LINT:set d_flexfnam +?LINT:extern TMPDIR : see if we can have long filenames echo " " ?X: @@ -34,10 +35,11 @@ echo " " ?X: one of those file systems cannot support long filenames, then we assume the ?X: whole system can't. ?X: -rmlist="$rmlist /tmp/cf$$" -$test -d /tmp/cf$$ || mkdir /tmp/cf$$ +tmpdir="${TMPDIR:-/tmp}" +rmlist="$rmlist $tmpdir/cf$$" +$test -d "$tmpdir/cf$$" || mkdir "$tmpdir/cf$$" first=123456789abcdef -second=/tmp/cf$$/$first +second="$tmpdir/cf$$/$first" $rm -f $first $second if (echo hi >$first) 2>/dev/null; then if $test -f 123456789abcde; then @@ -45,7 +47,7 @@ if (echo hi >$first) 2>/dev/null; then val="$undef" else if (echo hi >$second) 2>/dev/null; then - if $test -f /tmp/cf$$/123456789abcde; then + if $test -f "$tmpdir/cf$$/123456789abcde"; then $cat <<'EOM' That's peculiar... You can have filenames longer than 14 characters, but only on some of the filesystems. Maybe you are using NFS. Anyway, to avoid problems @@ -73,5 +75,5 @@ EOM fi set d_flexfnam eval $setvar -$rm -rf /tmp/cf$$ 123456789abcde* +$rm -rf "$tmpdir/cf$$" 123456789abcde* diff --git a/mcon/U/d_flock.U b/mcon/U/d_flock.U index c3252e3..8bed0a8 100644 --- a/mcon/U/d_flock.U +++ b/mcon/U/d_flock.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:05 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_flock: Inlibc +?MAKE:d_flock: Trylink cat ?MAKE: -pick add $@ %< ?S:d_flock: ?S: This variable conditionally defines HAS_FLOCK if flock() is @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_flock : see if flock exists -set flock d_flock -eval $inlibc +$cat >try.c < +#include +int main(void) +{ + static int fd, ret; + ret |= flock(fd, LOCK_SH); + ret |= flock(fd, LOCK_EX); + ret |= flock(fd, LOCK_UN); + return ret ? 0 : 1; +} +EOC +set d_flock +eval $trylink diff --git a/mcon/U/d_fmod.U b/mcon/U/d_fmod.U index bad72e7..ed650ae 100644 --- a/mcon/U/d_fmod.U +++ b/mcon/U/d_fmod.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:12:46 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_fmod: Inlibc +?MAKE:d_fmod: Trylink cat ?MAKE: -pick add $@ %< ?S:d_fmod: ?S: This variable conditionally defines the HAS_FMOD symbol, which @@ -29,6 +29,15 @@ ?H:. ?LINT:set d_fmod : see if fmod exists -set fmod d_fmod -eval $inlibc +$cat >try.c < +int main(void) +{ + static double x, y, ret; + ret = 1.0 * fmod(x, y); + return ret ? 0 : 1; +} +EOC +set d_fmod '-lm' +eval $trylink diff --git a/mcon/U/d_fork.U b/mcon/U/d_fork.U index 796aee3..e29d47a 100644 --- a/mcon/U/d_fork.U +++ b/mcon/U/d_fork.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:38 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_fork: Inlibc +?MAKE:d_fork: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_fork: ?S: This variable conditionally defines the HAS_FORK symbol, which @@ -28,6 +28,19 @@ ?H:. ?LINT:set d_fork : see if fork exists -set fork d_fork -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t pid; + pid |= fork(); + return pid ? 0 : 1; +} +EOC +set d_fork +eval $trylink diff --git a/mcon/U/d_fsetpos.U b/mcon/U/d_fsetpos.U index ce3d195..2d9e09d 100644 --- a/mcon/U/d_fsetpos.U +++ b/mcon/U/d_fsetpos.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1994/06/20 06:57:38 ram ?RCS: patch30: created ?RCS: -?MAKE:d_fsetpos: Inlibc +?MAKE:d_fsetpos: Trylink cat ?MAKE: -pick add $@ %< ?S:d_fsetpos: ?S: This variable conditionally defines HAS_FSETPOS if fsetpos() is @@ -26,6 +26,16 @@ ?H:. ?LINT:set d_fsetpos : see if fsetpos exists -set fsetpos d_fsetpos -eval $inlibc +$cat >try.c < +int main(void) +{ + static fpos_t pos; + static int ret; + ret |= fsetpos(stdout, &pos); + return ret ? 0 : 1; +} +EOC +set d_fsetpos +eval $trylink diff --git a/mcon/U/d_ftime.U b/mcon/U/d_ftime.U index 0e41cc7..71cdaf9 100644 --- a/mcon/U/d_ftime.U +++ b/mcon/U/d_ftime.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:06 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_ftime d_gettimeod: Inlibc Setvar +?MAKE:d_ftime d_gettimeod: Trylink cat i_systimeb ?MAKE: -pick add $@ %< ?S:d_ftime: ?S: This variable conditionally defines the HAS_FTIME symbol, which indicates @@ -58,17 +58,37 @@ ?X: ?X: Give priority to gettimeofday(2) because timing is more accurate ?X: -set gettimeofday d_gettimeod -eval $inlibc -case "$d_gettimeod" in -"$undef") - set ftime d_ftime - eval $inlibc - ;; -*) - val="$undef"; set d_ftime; eval $setvar - ;; -esac +$cat >try.c < +int main(void) +{ + static struct timeval tv; + static void *tz; + static int ret; + ret |= gettimeofday(&tv, tz); + return ret ? 0 : 1; +} +EOC +set d_gettimeod +eval $trylink + +$cat >try.c < +#$i_systimeb I_SYS_TIMEB +#ifdef I_SYS_TIMEB +#include +#endif +int main(void) +{ + static struct timeb t; + static int ret; + ret |= ftime(&t); + return ret ? 0 : 1; +} +EOC +set d_ftime +eval $trylink + case "$d_gettimeod$d_ftime" in "$undef$undef") echo " " diff --git a/mcon/U/d_ftrncate.U b/mcon/U/d_ftrncate.U index 29202b2..898234c 100644 --- a/mcon/U/d_ftrncate.U +++ b/mcon/U/d_ftrncate.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:07 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_ftrncate: Inlibc +?MAKE:d_ftrncate: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_ftrncate (d_ftruncate): ?S: This variable conditionally defines the HAS_FTRUNCATE symbol, which @@ -26,6 +26,20 @@ ?H:. ?LINT:set d_ftrncate : see if ftruncate exists -set ftruncate d_ftrncate -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int fd, ret; + static off_t length; + ret |= ftruncate(fd, length); + return ret ? 0 : 1; +} +EOC +set d_ftrncate +eval $trylink diff --git a/mcon/U/d_gconvert.U b/mcon/U/d_gconvert.U index 367da20..1068b03 100644 --- a/mcon/U/d_gconvert.U +++ b/mcon/U/d_gconvert.U @@ -21,7 +21,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:12:51 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_Gconvert: cat cc ccflags ldflags libs Inlibc rm _o +?MAKE:d_Gconvert: cat cc ccflags ldflags libs rm _o ?MAKE: -pick add $@ %< ?S:d_Gconvert: ?S: This variable holds what Gconvert is defined as to convert diff --git a/mcon/U/d_getgrps.U b/mcon/U/d_getgrps.U index 0cd16ea..a63afd7 100644 --- a/mcon/U/d_getgrps.U +++ b/mcon/U/d_getgrps.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:08 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_getgrps: Inlibc +?MAKE:d_getgrps: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_getgrps: ?S: This variable conditionally defines the HAS_GETGROUPS symbol, which @@ -28,6 +28,20 @@ ?H:. ?LINT:set d_getgrps : see if getgroups exists -set getgroups d_getgrps -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret; + static gid_t grouplist; + ret |= getgroups(1, &grouplist); + return ret ? 0 : 1; +} +EOC +set d_getgrps +eval $trylink diff --git a/mcon/U/d_gethbynm.U b/mcon/U/d_gethbynm.U index a7040ed..444a826 100644 --- a/mcon/U/d_gethbynm.U +++ b/mcon/U/d_gethbynm.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:08 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_gethbynm: Inlibc +?MAKE:d_gethbynm: Trylink cat ?MAKE: -pick add $@ %< ?S:d_gethbynm (d_gethhstby): ?S: This variable conditionally defines the HAS_GETHOSTBYNAME symbol, which @@ -27,6 +27,15 @@ ?H:. ?LINT:set d_gethbynm : see if gethostbyname exists -set gethostbyname d_gethbynm -eval $inlibc +$cat >try.c < +int main(void) +{ + struct hostent *he; + he = gethostbyname("hostname"); + return he ? 0 : 1; +} +EOC +set d_gethbynm '-lnsl' +eval $trylink diff --git a/mcon/U/d_gethent.U b/mcon/U/d_gethent.U index fa1427f..9305ebd 100644 --- a/mcon/U/d_gethent.U +++ b/mcon/U/d_gethent.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:09 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_gethent: Inlibc +?MAKE:d_gethent: Trylink cat ?MAKE: -pick add $@ %< ?S:d_gethent: ?S: This variable conditionally defines HAS_GETHOSTENT if gethostent() is @@ -26,6 +26,15 @@ ?H:. ?LINT:set d_gethent : see if gethostent exists -set gethostent d_gethent -eval $inlibc +$cat >try.c < +int main(void) +{ + struct hostent *ret; + ret = gethostent(); + return ret ? 0 : 1; +} +EOC +set d_gethent +eval $trylink diff --git a/mcon/U/d_gethid.U b/mcon/U/d_gethid.U index d19c9f8..293a36f 100644 --- a/mcon/U/d_gethid.U +++ b/mcon/U/d_gethid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:10 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_gethid: Inlibc +?MAKE:d_gethid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_gethid: ?S: This variable conditionally defines HAS_GETHOSTID if gethostid() is @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_gethid : see if gethid exists -set gethostid d_gethid -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static long id; + id |= gethostid(); + return id ? 0 : 1; +} +EOC +set d_gethid +eval $trylink diff --git a/mcon/U/d_getlogin.U b/mcon/U/d_getlogin.U index abb9dd5..967dd73 100644 --- a/mcon/U/d_getlogin.U +++ b/mcon/U/d_getlogin.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:41 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_getlogin: Inlibc +?MAKE:d_getlogin: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_getlogin: ?S: This variable conditionally defines the HAS_GETLOGIN symbol, which @@ -29,6 +29,18 @@ ?H:. ?LINT:set d_getlogin : see if getlogin exists -set getlogin d_getlogin -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static char ret; + ret |= *getlogin(); + return ret ? 0 : 1; +} +EOC +set d_getlogin +eval $trylink diff --git a/mcon/U/d_getopt.U b/mcon/U/d_getopt.U index c5438b4..4a5eb59 100644 --- a/mcon/U/d_getopt.U +++ b/mcon/U/d_getopt.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:13 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_getopt: Inlibc +?MAKE:d_getopt: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_getopt: ?S: This variable conditionally defines the HAS_GETOPT symbol, which @@ -26,6 +26,20 @@ ?H:. ?LINT:set d_getopt : see if getopt exists -set getopt d_getopt -eval $inlibc +$cat >try.c < +#endif +extern char *optarg; +extern int optind, opterr, optopt; +int main(int argc, char *argv[]) +{ + static int ret; + ret |= getopt(argc, argv, "abc"); + return ret ? 0 : 1; +} +EOC +set d_getopt +eval $trylink diff --git a/mcon/U/d_getpagsz.U b/mcon/U/d_getpagsz.U index 6083653..fcbef76 100644 --- a/mcon/U/d_getpagsz.U +++ b/mcon/U/d_getpagsz.U @@ -15,8 +15,8 @@ ?RCS: Revision 3.0 1993/08/18 12:06:14 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_getpagsz pagesize: Oldconfig Myread Inlibc cat contains +cc +ccflags \ - libs rm Findhdr +?MAKE:d_getpagsz pagesize: Oldconfig Myread Trylink cat contains +cc +ccflags \ + libs rm Findhdr i_unistd ?MAKE: -pick add $@ %< ?S:d_getpagsz: ?S: This variable conditionally defines HAS_GETPAGESIZE if getpagesize() @@ -43,8 +43,20 @@ ?T:guess ?LINT:set d_getpagsz : see if getpagesize exists -set getpagesize d_getpagsz -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + ret |= getpagesize(); + return ret ? 0 : 1; +} +EOC +set d_getpagsz +eval $trylink @if pagesize || PAGESIZE_VALUE : determine the system page size @@ -53,8 +65,12 @@ guess=' (OK to guess)' case "$pagesize" in '') $cat >page.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) { printf("%d\n", getpagesize()); } @@ -79,9 +95,10 @@ EOP if $contains PAGESIZE `./findhdr sys/param.h` >/dev/null 2>&1; then $cat >page.c < -int main() +#include +int main(void) { - printf("%d\n", PAGESIZE); + printf("%d\n", (int) PAGESIZE); } EOP if $cc $ccflags -o page page.c $libs >/dev/null 2>&1; then diff --git a/mcon/U/d_getpgid.U b/mcon/U/d_getpgid.U index de6a1a7..79be97a 100644 --- a/mcon/U/d_getpgid.U +++ b/mcon/U/d_getpgid.U @@ -13,7 +13,7 @@ ?RCS: Revision 3.0.1.1 1997/02/28 15:33:44 ram ?RCS: patch61: created ?RCS: -?MAKE:d_getpgid: Inlibc +?MAKE:d_getpgid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_getpgid: ?S: This variable conditionally defines the HAS_GETPGID symbol, which @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_getpgid : see if getpgid exists -set getpgid d_getpgid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t pid, ret; + ret |= getpgid(pid); + return ret ? 0 : 1; +} +EOC +set d_getpgid +eval $trylink diff --git a/mcon/U/d_getpgrp.U b/mcon/U/d_getpgrp.U index bc5f5d2..f9fa308 100644 --- a/mcon/U/d_getpgrp.U +++ b/mcon/U/d_getpgrp.U @@ -15,8 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:15 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_getpgrp d_bsdgetpgrp: Guess Inlibc Setvar cat rm \ - +cc +ccflags +ldflags +libs i_unistd +?MAKE:d_getpgrp d_bsdgetpgrp: Trylink Setvar cat i_unistd ?MAKE: -pick add $@ %< ?S:d_getpgrp: ?S: This variable conditionally defines HAS_GETPGRP if getpgrp() is @@ -37,72 +36,46 @@ ?H:#$d_getpgrp HAS_GETPGRP /**/ ?H:#$d_bsdgetpgrp USE_BSD_GETPGRP /**/ ?H:. -?F:!set !set.c -?T:xxx ?LINT:set d_getpgrp d_bsdgetpgrp : see if getpgrp exists -set getpgrp d_getpgrp -eval $inlibc - -@if USE_BSD_GETPGRP || d_bsdgetpgrp -case "$d_getpgrp" in -"$define") - echo " " - echo "Checking to see which flavor of getpgrp is in use..." - $cat >set.c <try.c < +#$i_unistd I_UNISTD #ifdef I_UNISTD -# include +#include #endif -int main() +int main(void) { - if (getuid() == 0) { - printf("(I see you are running Configure as super-user...)\n"); - setuid(1); - } -#ifdef TRY_BSD_PGRP - if (getpgrp(1) == 0) - exit(0); -#else - if (getpgrp() > 0) - exit(0); + static pid_t ret, pid; + ret |= getpgrp(pid); + return ret ? 0 : 1; +} +EOC +set d_bsdgetpgrp +eval $trylink + +case "$d_bsdgetpgrp" in +$define) + val="$define" + set d_getpgrp + eval $setvar + ;; +*) + $cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include #endif - exit(1); +int main(void) +{ + static pid_t ret; + ret |= getpgrp(); + return ret ? 0 : 1; } -EOP - if $cc -DTRY_BSD_PGRP $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 - && ./set - then - echo "You have to use getpgrp(pid) instead of getpgrp()." >&4 - val="$define" - elif $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then - echo "You have to use getpgrp() instead of getpgrp(pid)." >&4 - val="$undef" - else - echo "I can't seem to compile and run the test program." - if ./usg; then - xxx="a USG one, i.e. you use getpgrp()." - else - # SVR4 systems can appear rather BSD-ish. - case "$i_unistd" in - $undef) - xxx="a BSD one, i.e. you use getpgrp(pid)." - val="$define" - ;; - $define) - xxx="probably a USG one, i.e. you use getpgrp()." - val="$undef" - ;; - esac - fi - echo "Assuming your getpgrp is $xxx" >&4 - fi +EOC + set d_getpgrp + eval $trylink ;; -*) val="$undef";; esac -set d_bsdgetpgrp -eval $setvar -$rm -f set set.c -@end diff --git a/mcon/U/d_getpgrp2.U b/mcon/U/d_getpgrp2.U index 3aa5e1d..3cbcf74 100644 --- a/mcon/U/d_getpgrp2.U +++ b/mcon/U/d_getpgrp2.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:15 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_getpgrp2: Inlibc +?MAKE:d_getpgrp2: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_getpgrp2: ?S: This variable conditionally defines the HAS_GETPGRP2 symbol, which @@ -27,6 +27,19 @@ ?H:. ?LINT:set d_getpgrp2 : see if getpgrp2 exists -set getpgrp2 d_getpgrp2 -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t pid, ret; + ret |= getpgrp2(pid); + return ret ? 0 : 1; +} +EOC +set d_getpgrp2 +eval $trylink diff --git a/mcon/U/d_getppid.U b/mcon/U/d_getppid.U index 6754924..98dd2ef 100644 --- a/mcon/U/d_getppid.U +++ b/mcon/U/d_getppid.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:07:45 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_getppid: Inlibc +?MAKE:d_getppid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_getppid: ?S: This variable conditionally defines the HAS_GETPPID symbol, which @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_getppid : see if getppid exists -set getppid d_getppid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t ret; + ret |= getppid(); + return ret ? 0 : 1; +} +EOC +set d_getppid +eval $trylink diff --git a/mcon/U/d_getprior.U b/mcon/U/d_getprior.U index 0397f1c..f3b0120 100644 --- a/mcon/U/d_getprior.U +++ b/mcon/U/d_getprior.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:16 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_getprior: Inlibc +?MAKE:d_getprior: Trylink cat i_sysresrc ?MAKE: -pick add $@ %< ?S:d_getprior: ?S: This variable conditionally defines HAS_GETPRIORITY if getpriority() @@ -26,6 +26,21 @@ ?H:. : see if getpriority exists ?LINT:set d_getprior -set getpriority d_getprior -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + static id_t id; + ret |= getpriority(PRIO_PROCESS, id); + ret |= getpriority(PRIO_PGRP, id); + ret |= getpriority(PRIO_USER, id); + return ret ? 0 : 1; +} +EOC +set d_getprior +eval $trylink diff --git a/mcon/U/d_getpwent.U b/mcon/U/d_getpwent.U index fbec685..6957c59 100644 --- a/mcon/U/d_getpwent.U +++ b/mcon/U/d_getpwent.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:17 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_getpwent: Csym Setvar +?MAKE:d_getpwent: Trylink cat ?MAKE: -pick add $@ %< ?S:d_getpwent: ?S: This variable conditionally defines the HAS_GETPWENT symbol, which @@ -27,14 +27,15 @@ ?H:. ?LINT:set d_getpwent : see if there is a getpwent -echo " " -if set getpwent val -f d_getpwent; eval $csym; $val; then - echo "getpwent() found." >&4 - val="$define" -else - echo "No getpwent() found -- will use getpw() instead." >&4 - val="$undef" -fi +$cat >try.c < +int main(void) +{ + struct passwd pw; + pw = *getpwent(); + return pw.pw_name ? 0 : 1; +} +EOC set d_getpwent -eval $setvar +eval $trylink diff --git a/mcon/U/d_getwd.U b/mcon/U/d_getwd.U index 987e93b..e1101f3 100644 --- a/mcon/U/d_getwd.U +++ b/mcon/U/d_getwd.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:18 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_getwd: Csym Setvar +?MAKE:d_getwd: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_getwd: ?S: This variable conditionally defines HAS_GETWD if getwd() is @@ -28,14 +28,20 @@ ?H:. ?LINT:set d_getwd : see if getwd exists -echo " " -if set getwd val -f d_getwd; eval $csym; $val; then - echo 'getwd() found.' >&4 - val="$define" -else - echo 'getwd() not found. Assuming getcwd() exists.' >&4 - val="$undef" -fi +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static char ret; + static char buf[MAXPATHLEN]; + ret |= *getwd(buf); + return ret ? 0 : 1; +} +EOC set d_getwd -eval $setvar +eval $trylink diff --git a/mcon/U/d_htonl.U b/mcon/U/d_htonl.U index 82b176d..d832f4c 100644 --- a/mcon/U/d_htonl.U +++ b/mcon/U/d_htonl.U @@ -18,8 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:22 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_htonl: Inlibc Setvar i_niin i_sysin cat rm contains \ - cppstdin cppflags cppminus +?MAKE:d_htonl: Trylink cat i_niin i_sysin ?MAKE: -pick add $@ %< ?S:d_htonl: ?S: This variable conditionally defines HAS_HTONL if htonl() and its @@ -50,39 +49,31 @@ ?H:#$d_htonl HAS_NTOHL /**/ ?H:#$d_htonl HAS_NTOHS /**/ ?H:. -?F:!htonl.c ?LINT:set d_htonl : see if htonl --and friends-- exists -val='' -set htonl val -eval $inlibc - -: Maybe they are macros. -case "$val" in -$undef) - $cat >htonl.c <try.c < #include #$i_niin I_NETINET_IN -#$i_sysin I_SYS_IN #ifdef I_NETINET_IN #include #endif +#$i_sysin I_SYS_IN #ifdef I_SYS_IN #include #endif -#ifdef htonl -printf("Defined as a macro."); -#endif -EOM - $cppstdin $cppflags $cppminus < htonl.c >htonl.E 2>/dev/null - if $contains 'Defined as a macro' htonl.E >/dev/null 2>&1; then - val="$define" - echo "But it seems to be defined as a macro." >&4 - fi - $rm -f htonl.? - ;; -esac +int main(int argc, char *argv[]) +{ + static unsigned long ret; + unsigned char val = argc; + (void) argv; + ret |= htonl(val); + ret |= htons(val); + ret |= ntohl(val); + ret |= ntohs(val); + return ret ? 0 : 1; +} +EOC set d_htonl -eval $setvar +eval $trylink diff --git a/mcon/U/d_inetaton.U b/mcon/U/d_inetaton.U index d3a4607..ad6dc4e 100644 --- a/mcon/U/d_inetaton.U +++ b/mcon/U/d_inetaton.U @@ -13,7 +13,7 @@ ?RCS: Revision 3.0.1.1 1997/02/28 15:36:35 ram ?RCS: patch61: created ?RCS: -?MAKE:d_inetaton: Inlibc +?MAKE:d_inetaton: Trylink cat i_arpainet ?MAKE: -pick add $@ %< ?S:d_inetaton: ?S: This variable conditionally defines the HAS_INET_ATON symbol, which @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_inetaton : check whether inet_aton exists -set inet_aton d_inetaton -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + static struct in_addr addr; + ret |= inet_aton("0.0.0.0", &addr); + return ret ? 0 : 1; +} +EOC +set d_inetaton +eval $trylink diff --git a/mcon/U/d_isascii.U b/mcon/U/d_isascii.U index a4a0fff..70d7c78 100644 --- a/mcon/U/d_isascii.U +++ b/mcon/U/d_isascii.U @@ -17,7 +17,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:09:32 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_isascii: cc cat ccflags ldflags rm libs Setvar +?MAKE:d_isascii: Trylink cat ?MAKE: -pick add $@ %< ?S:d_isascii: ?S: This variable conditionally defines the HAS_ISASCII constant, @@ -30,28 +30,16 @@ ?H:#$d_isascii HAS_ISASCII /**/ ?H:. ?LINT:set d_isascii -?X: Can't use Inlibc because isascii() might be a macro. : Look for isascii -echo " " -$cat >isascii.c <<'EOCP' -#include +$cat >try.c < -int main() { - int c = 'A'; - if (isascii(c)) - exit(0); - else - exit(1); +int main(void) +{ + static int ret, c; + ret |= isascii(c); + return ret ? 0 : 1; } -EOCP -if $cc $ccflags $ldflags -o isascii isascii.c $libs >/dev/null 2>&1 ; then - echo "isascii() found." >&4 - val="$define" -else - echo "isascii() NOT found." >&4 - val="$undef" -fi +EOC set d_isascii -eval $setvar -$rm -f isascii* +eval $trylink diff --git a/mcon/U/d_itimer.U b/mcon/U/d_itimer.U index 027112e..0dc6fa6 100644 --- a/mcon/U/d_itimer.U +++ b/mcon/U/d_itimer.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:25 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_itimer: Inlibc +?MAKE:d_itimer: Trylink cat ?MAKE: -pick add $@ %< ?S:d_itimer: ?S: This variable conditionally defines the HAS_ITIMER symbol, which @@ -27,6 +27,19 @@ ?H:. ?LINT:set d_itimer : see if setitimer exists -set setitimer d_itimer -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret; + static struct itimerval val, old; + + ret |= setitimer(ITIMER_REAL, &val, &old); + ret |= setitimer(ITIMER_VIRTUAL, &val, &old); + ret |= setitimer(ITIMER_PROF, &val, &old); + return ret ? 0 : 1; +} +EOC +set d_itimer +eval $trylink diff --git a/mcon/U/d_killpg.U b/mcon/U/d_killpg.U index 220932a..4ed8258 100644 --- a/mcon/U/d_killpg.U +++ b/mcon/U/d_killpg.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:27 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_killpg: Inlibc +?MAKE:d_killpg: Trylink cat ?MAKE: -pick add $@ %< ?S:d_killpg: ?S: This variable conditionally defines the HAS_KILLPG symbol, which @@ -28,6 +28,17 @@ ?H:. ?LINT:set d_killpg : see if killpg exists -set killpg d_killpg -eval $inlibc +$cat >try.c < +#include +int main(void) +{ + static pid_t pid; + static int ret, sig; + ret |= killpg(pid, sig); + return ret ? 0 : 1; +} +EOC +set d_killpg +eval $trylink diff --git a/mcon/U/d_link.U b/mcon/U/d_link.U index cd5d889..8929d83 100644 --- a/mcon/U/d_link.U +++ b/mcon/U/d_link.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1993/08/25 14:01:13 ram ?RCS: patch6: created for completeness ?RCS: -?MAKE:d_link: Inlibc +?MAKE:d_link: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_link: ?S: This variable conditionally defines HAS_LINK if link() is @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_link : see if link exists -set link d_link -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + ret |= link("path1", "path2"); + return ret ? 0 : 1; +} +EOC +set d_link +eval $trylink diff --git a/mcon/U/d_locconv.U b/mcon/U/d_locconv.U index a7bec1f..dacc509 100644 --- a/mcon/U/d_locconv.U +++ b/mcon/U/d_locconv.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:14:11 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_locconv: Inlibc +?MAKE:d_locconv: Trylink cat i_locale ?MAKE: -pick add $@ %< ?S:d_locconv: ?S: This variable conditionally defines HAS_LOCALECONV if localeconv() is @@ -28,6 +28,18 @@ ?H:. ?LINT:set d_locconv : see if localeconv exists -set localeconv d_locconv -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + struct lconv *lc; + lc = localeconv(); + return lc ? 0 : 1; +} +EOC +set d_locconv +eval $trylink diff --git a/mcon/U/d_lockf.U b/mcon/U/d_lockf.U index 062f753..3f2953f 100644 --- a/mcon/U/d_lockf.U +++ b/mcon/U/d_lockf.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:09:36 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_lockf: Inlibc +?MAKE:d_lockf: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_lockf: ?S: This variable conditionally defines HAS_LOCKF if lockf() is @@ -28,6 +28,23 @@ ?H:. ?LINT:set d_lockf : see if lockf exists -set lockf d_lockf -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int fd, ret; + static off_t size; + ret |= lockf(fd, F_ULOCK, size); + ret |= lockf(fd, F_LOCK, size); + ret |= lockf(fd, F_TLOCK, size); + ret |= lockf(fd, F_TEST, size); + return ret ? 0 : 1; +} +EOC +set d_lockf +eval $trylink diff --git a/mcon/U/d_lstat.U b/mcon/U/d_lstat.U index 4d5bc46..8c86364 100644 --- a/mcon/U/d_lstat.U +++ b/mcon/U/d_lstat.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:28 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_lstat: Inlibc +?MAKE:d_lstat: Trylink cat i_sysstat ?MAKE: -pick add $@ %< ?S:d_lstat: ?S: This variable conditionally defines HAS_LSTAT if lstat() is @@ -26,6 +26,19 @@ ?H:. ?LINT:set d_lstat : see if lstat exists -set lstat d_lstat -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + struct stat sb; + ret |= lstat("path", &sb); + return ret ? 0 : 1; +} +EOC +set d_lstat +eval $trylink diff --git a/mcon/U/d_mblen.U b/mcon/U/d_mblen.U index b990066..7687410 100644 --- a/mcon/U/d_mblen.U +++ b/mcon/U/d_mblen.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:09:40 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_mblen: Inlibc +?MAKE:d_mblen: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_mblen: ?S: This variable conditionally defines the HAS_MBLEN symbol, which @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_mblen : see if mblen exists -set mblen d_mblen -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + static size_t n; + ret |= mblen("xxx", n); + return ret ? 0 : 1; +} +EOC +set d_mblen +eval $trylink diff --git a/mcon/U/d_mbstowcs.U b/mcon/U/d_mbstowcs.U index c73ca45..ff5db1b 100644 --- a/mcon/U/d_mbstowcs.U +++ b/mcon/U/d_mbstowcs.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:29 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_mbstowcs: Inlibc +?MAKE:d_mbstowcs: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_mbstowcs: ?S: This variable conditionally defines the HAS_MBSTOWCS symbol, which @@ -27,6 +27,19 @@ ?H:. ?LINT:set d_mbstowcs : see if mbstowcs exists -set mbstowcs d_mbstowcs -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static size_t n, ret; + static wchar_t wcs; + ret |= mbstowcs(&wcs, "xxx", n); + return ret ? 0 : 1; +} +EOC +set d_mbstowcs +eval $trylink diff --git a/mcon/U/d_mbtowc.U b/mcon/U/d_mbtowc.U index ea24f92..3f97919 100644 --- a/mcon/U/d_mbtowc.U +++ b/mcon/U/d_mbtowc.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:30 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_mbtowc: Inlibc +?MAKE:d_mbtowc: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_mbtowc: ?S: This variable conditionally defines the HAS_MBTOWC symbol, which @@ -27,6 +27,20 @@ ?H:. ?LINT:set d_mbtowc : see if mbtowc exists -set mbtowc d_mbtowc -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static wchar_t wc; + static size_t n; + static int ret; + ret |= mbtowc(&wc, "xxx", n); + return ret ? 0 : 1; +} +EOC +set d_mbtowc +eval $trylink diff --git a/mcon/U/d_memalign.U b/mcon/U/d_memalign.U index a27a559..6d98cf2 100644 --- a/mcon/U/d_memalign.U +++ b/mcon/U/d_memalign.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: d_memalign.U,v $ ?RCS: -?MAKE:d_memalign: Inlibc +?MAKE:d_memalign: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_memalign: ?S: This variable conditionally defines the HAS_MEMALIGN symbol, which @@ -24,6 +24,19 @@ ?H:. ?LINT:set d_memalign : see if memalign exists -set memalign d_memalign -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static size_t align, size; + void *p; + p = memalign(align, size); + return p ? 0 : 1; +} +EOC +set d_memalign +eval $trylink diff --git a/mcon/U/d_memccpy.U b/mcon/U/d_memccpy.U index 386ee30..d4c6d02 100644 --- a/mcon/U/d_memccpy.U +++ b/mcon/U/d_memccpy.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:31 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_memccpy: Inlibc +?MAKE:d_memccpy: Trylink cat ?MAKE: -pick add $@ %< ?S:d_memccpy: ?S: This variable conditionally defines the HAS_MEMCCPY symbol, which @@ -28,6 +28,17 @@ ?H:. ?LINT:set d_memccpy : see if memccpy exists -set memccpy d_memccpy -eval $inlibc +$cat >try.c < +int main(void) +{ + static int dst, src, c; + static size_t n; + void *p; + p = memccpy(&dst, &src, c, n); + return p ? 0 : 1; +} +EOC +set d_memccpy +eval $trylink diff --git a/mcon/U/d_memchr.U b/mcon/U/d_memchr.U index 00b5b87..14d4e4a 100644 --- a/mcon/U/d_memchr.U +++ b/mcon/U/d_memchr.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:32 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_memchr: Inlibc +?MAKE:d_memchr: Trylink cat ?MAKE: -pick add $@ %< ?S:d_memchr: ?S: This variable conditionally defines the HAS_MEMCHR symbol, which @@ -27,6 +27,17 @@ ?H:. ?LINT:set d_memchr : see if memchr exists -set memchr d_memchr -eval $inlibc +$cat >try.c < +int main(void) +{ + static char s[] = "xxx"; + static size_t n = sizeof(s); + void *p; + p = memchr(s, 'x', n); + return p ? 0 : 1; +} +EOC +set d_memchr +eval $trylink diff --git a/mcon/U/d_memcmp.U b/mcon/U/d_memcmp.U index 1761865..c1e1652 100644 --- a/mcon/U/d_memcmp.U +++ b/mcon/U/d_memcmp.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:33 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_memcmp: Inlibc +?MAKE:d_memcmp: Trylink cat ?MAKE: -pick add $@ %< ?S:d_memcmp: ?S: This variable conditionally defines the HAS_MEMCMP symbol, which @@ -30,6 +30,15 @@ ?H:. ?LINT:set d_memcmp : see if memcmp exists -set memcmp d_memcmp -eval $inlibc +$cat >try.c < +int main(void) +{ + static int a, b, ret; + ret |= memcmp(&a, &b, sizeof(a)); + return ret ? 0 : 1; +} +EOC +set d_memcmp +eval $trylink diff --git a/mcon/U/d_memcpy.U b/mcon/U/d_memcpy.U index b500662..6eb4bec 100644 --- a/mcon/U/d_memcpy.U +++ b/mcon/U/d_memcpy.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:34 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_memcpy: Inlibc +?MAKE:d_memcpy: Trylink cat ?MAKE: -pick add $@ %< ?S:d_memcpy: ?S: This variable conditionally defines the HAS_MEMCPY symbol, which @@ -30,6 +30,16 @@ ?H:. ?LINT:set d_memcpy : see if memcpy exists -set memcpy d_memcpy -eval $inlibc +$cat >try.c < +int main(void) +{ + static char src, dst; + void *p; + p = memcpy(&dst, &src, sizeof(dst)); + return p ? 0 : 1; +} +EOC +set d_memcpy +eval $trylink diff --git a/mcon/U/d_memmove.U b/mcon/U/d_memmove.U index 34280e0..09b5c6c 100644 --- a/mcon/U/d_memmove.U +++ b/mcon/U/d_memmove.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:35 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_memmove: Inlibc +?MAKE:d_memmove: Trylink cat ?MAKE: -pick add $@ %< ?S:d_memmove: ?S: This variable conditionally defines the HAS_MEMMOVE symbol, which @@ -29,6 +29,16 @@ ?H:. ?LINT:set d_memmove : see if memmove exists -set memmove d_memmove -eval $inlibc +$cat >try.c < +int main(void) +{ + static char dst, src; + void *p; + p = memmove(&dst, &src, sizeof(dst)); + return p ? 0 : 1; +} +EOC +set d_memmove +eval $trylink diff --git a/mcon/U/d_memset.U b/mcon/U/d_memset.U index 812c4de..8744839 100644 --- a/mcon/U/d_memset.U +++ b/mcon/U/d_memset.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:36 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_memset: Inlibc +?MAKE:d_memset: Trylink cat ?MAKE: -pick add $@ %< ?S:d_memset: ?S: This variable conditionally defines the HAS_MEMSET symbol, which @@ -30,6 +30,17 @@ ?H:. ?LINT:set d_memset : see if memset exists -set memset d_memset -eval $inlibc +$cat >try.c < +int main(void) +{ + static int dst, c; + size_t n = sizeof(dst); + void *p; + p = memset(&dst, c, n); + return p ? 0 : 1; +} +EOC +set d_memset +eval $trylink diff --git a/mcon/U/d_mkdir.U b/mcon/U/d_mkdir.U index 9cb6961..51be290 100644 --- a/mcon/U/d_mkdir.U +++ b/mcon/U/d_mkdir.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:37 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_mkdir: Inlibc +?MAKE:d_mkdir: Trylink cat i_sysstat ?MAKE: -pick add $@ %< ?S:d_mkdir: ?S: This variable conditionally defines the HAS_MKDIR symbol, which @@ -28,6 +28,20 @@ ?H:. ?LINT:set d_mkdir : see if mkdir exists -set mkdir d_mkdir -eval $inlibc +$cat >try.c < +#$i_sysstat I_SYS_STAT +#ifdef I_SYS_STAT +#include +#endif +int main(void) +{ + static int ret; + static mode_t mode; + ret |= mkdir("path", mode); + return ret ? 0 : 1; +} +EOC +set d_mkdir +eval $trylink diff --git a/mcon/U/d_mkfifo.U b/mcon/U/d_mkfifo.U index cca2262..2a57ac0 100644 --- a/mcon/U/d_mkfifo.U +++ b/mcon/U/d_mkfifo.U @@ -15,7 +15,7 @@ ?RCS: patch36: created by ADO ?RCS: ?RCS: -?MAKE:d_mkfifo: Inlibc +?MAKE:d_mkfifo: Trylink cat i_sysstat ?MAKE: -pick add $@ %< ?S:d_mkfifo: ?S: This variable conditionally defines the HAS_MKFIFO symbol, which @@ -31,6 +31,20 @@ ?H:. ?LINT:set d_mkfifo : see if mkfifo exists -set mkfifo d_mkfifo -eval $inlibc +$cat >try.c < +#$i_sysstat I_SYS_STAT +#ifdef I_SYS_STAT +#include +#endif +int main(void) +{ + static int ret; + static mode_t mode; + ret |= mkfifo("path", mode); + return ret ? 0 : 1; +} +EOC +set d_mkfifo +eval $trylink diff --git a/mcon/U/d_mktime.U b/mcon/U/d_mktime.U index fd62716..5459433 100644 --- a/mcon/U/d_mktime.U +++ b/mcon/U/d_mktime.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:09:44 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_mktime: Inlibc +?MAKE:d_mktime: Trylink cat ?MAKE: -pick add $@ %< ?S:d_mktime: ?S: This variable conditionally defines the HAS_MKTIME symbol, which @@ -28,6 +28,16 @@ ?H:. ?LINT:set d_mktime : see if mktime exists -set mktime d_mktime -eval $inlibc +$cat >try.c < +int main(void) +{ + static struct tm tm; + static time_t ret; + ret = mktime(&tm); + return ret ? 0 : 1; +} +EOC +set d_mktime +eval $trylink diff --git a/mcon/U/d_mmap.U b/mcon/U/d_mmap.U index ad5448e..8d82118 100644 --- a/mcon/U/d_mmap.U +++ b/mcon/U/d_mmap.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1993/12/15 08:19:12 ram ?RCS: patch15: created ?RCS: -?MAKE:d_mmap: Inlibc +?MAKE:d_mmap: Trylink cat i_sysmman ?MAKE: -pick add $@ %< ?S:d_mmap: ?S: This variable conditionally defines HAS_MMAP if mmap() is @@ -26,6 +26,27 @@ ?H:. ?LINT:set d_mmap : see if mmap exists -set mmap d_mmap -eval $inlibc +$cat >try.c < +#$i_sysmman I_SYS_MMAN +#ifdef I_SYS_MMAN +#include +#endif +int main(void) +{ + static off_t offset; + static void *addr; + static size_t len; + static int flags, fd, prot; + void *p; + flags |= PROT_NONE; + flags |= PROT_READ; + flags |= PROT_WRITE; + flags |= PROT_EXEC; + p = mmap(addr, len, prot, flags, fd, offset); + return p ? 0 : 1; +} +EOC +set d_mmap +eval $trylink diff --git a/mcon/U/d_msem_lck.U b/mcon/U/d_msem_lck.U index 80308a4..c00768e 100644 --- a/mcon/U/d_msem_lck.U +++ b/mcon/U/d_msem_lck.U @@ -9,7 +9,7 @@ ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_msem_lck.U,v $ -?MAKE:d_msem_lck: Inlibc +?MAKE:d_msem_lck: Trylink cat i_sysmman ?MAKE: -pick add $@ %< ?S:d_msem_lck: ?S: This variable conditionally defines HAS_MSEM_LOCK if msem_lock() is @@ -23,6 +23,19 @@ ?H:. ?LINT:set d_msem_lck : see if msem_lock exists -set msem_lock d_msem_lck -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + static msemaphore *sem; + ret |= msem_lock(sem, MSEM_IF_NOWAIT); + return ret ? 0 : 1; +} +EOC +set d_msem_lck +eval $trylink diff --git a/mcon/U/d_msgctl.U b/mcon/U/d_msgctl.U index 4f50ad3..ea73d31 100644 --- a/mcon/U/d_msgctl.U +++ b/mcon/U/d_msgctl.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:38 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_msgctl: Inlibc +?MAKE:d_msgctl: Trylink cat ?MAKE: -pick add $@ %< ?S:d_msgctl: ?S: This variable conditionally defines the HAS_MSGCTL symbol, which @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_msgctl : see if msgctl exists -set msgctl d_msgctl -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, id; + static struct msqid_ds buf; + ret |= msgctl(id, IPC_STAT, &buf); + ret |= msgctl(id, IPC_SET, &buf); + ret |= msgctl(id, IPC_RMID, &buf); + return ret ? 0 : 1; +} +EOC +set d_msgctl +eval $trylink diff --git a/mcon/U/d_msgget.U b/mcon/U/d_msgget.U index 8313591..df5d283 100644 --- a/mcon/U/d_msgget.U +++ b/mcon/U/d_msgget.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:39 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_msgget: Inlibc +?MAKE:d_msgget: Trylink cat ?MAKE: -pick add $@ %< ?S:d_msgget: ?S: This variable conditionally defines the HAS_MSGGET symbol, which @@ -26,6 +26,19 @@ ?H:. ?LINT:set d_msgget : see if msgget exists -set msgget d_msgget -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, flags; + static key_t key; + flags |= IPC_CREAT; + flags |= IPC_EXCL; + key = IPC_PRIVATE; + ret |= msgget(key, flags); + return ret ? 0 : 1; +} +EOC +set d_msgget +eval $trylink diff --git a/mcon/U/d_msgrcv.U b/mcon/U/d_msgrcv.U index 9f7c27e..5d5f134 100644 --- a/mcon/U/d_msgrcv.U +++ b/mcon/U/d_msgrcv.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:40 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_msgrcv: Inlibc +?MAKE:d_msgrcv: Trylink cat ?MAKE: -pick add $@ %< ?S:d_msgrcv: ?S: This variable conditionally defines the HAS_MSGRCV symbol, which @@ -26,6 +26,21 @@ ?H:. ?LINT:set d_msgrcv : see if msgrcv exists -set msgrcv d_msgrcv -eval $inlibc +$cat >try.c < +int main(void) +{ + static ssize_t ret; + static int id, flags; + static size_t size; + static long type; + static char buf[16]; + flags |= IPC_CREAT; + flags |= IPC_EXCL; + ret |= msgrcv(id, &buf, size, type, flags); + return ret ? 0 : 1; +} +EOC +set d_msgrcv +eval $trylink diff --git a/mcon/U/d_msgsnd.U b/mcon/U/d_msgsnd.U index 924d59a..7fcda37 100644 --- a/mcon/U/d_msgsnd.U +++ b/mcon/U/d_msgsnd.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:41 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_msgsnd: Inlibc +?MAKE:d_msgsnd: Trylink cat ?MAKE: -pick add $@ %< ?S:d_msgsnd: ?S: This variable conditionally defines the HAS_MSGSND symbol, which @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_msgsnd : see if msgsnd exists -set msgsnd d_msgsnd -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, id, flags; + static size_t size; + static char buf[16]; + flags |= IPC_NOWAIT; + ret |= msgsnd(id, &buf, size, flags); + return ret ? 0 : 1; +} +EOC +set d_msgsnd +eval $trylink diff --git a/mcon/U/d_msync.U b/mcon/U/d_msync.U index 49db7e2..1cb9fc3 100644 --- a/mcon/U/d_msync.U +++ b/mcon/U/d_msync.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1993/12/15 08:19:17 ram ?RCS: patch15: created ?RCS: -?MAKE:d_msync: Inlibc +?MAKE:d_msync: Trylink cat i_sysmman ?MAKE: -pick add $@ %< ?S:d_msync: ?S: This variable conditionally defines HAS_MSYNC if msync() is @@ -26,6 +26,23 @@ ?H:. ?LINT:set d_msync : see if msync exists -set msync d_msync -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret, flags; + static void *addr; + static size_t len; + flags |= MS_ASYNC; + flags |= MS_SYNC; + flags |= MS_INVALIDATE; + ret |= msync(addr, len, flags); + return ret ? 0 : 1; +} +EOC +set d_msync +eval $trylink diff --git a/mcon/U/d_munmap.U b/mcon/U/d_munmap.U index d1cc5a0..3ce01ec 100644 --- a/mcon/U/d_munmap.U +++ b/mcon/U/d_munmap.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1993/12/15 08:19:22 ram ?RCS: patch15: created ?RCS: -?MAKE:d_munmap: Inlibc +?MAKE:d_munmap: Trylink cat i_sysmman ?MAKE: -pick add $@ %< ?S:d_munmap: ?S: This variable conditionally defines HAS_MUNMAP if munmap() is @@ -26,6 +26,20 @@ ?H:. ?LINT:set d_munmap : see if munmap exists -set munmap d_munmap -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + static void *addr; + static size_t len; + ret |= munmap(addr, len); + return ret ? 0 : 1; +} +EOC +set d_munmap +eval $trylink diff --git a/mcon/U/d_nice.U b/mcon/U/d_nice.U index 3ca22a6..2e92abb 100644 --- a/mcon/U/d_nice.U +++ b/mcon/U/d_nice.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:09:48 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_nice: Inlibc +?MAKE:d_nice: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_nice: ?S: This variable conditionally defines the HAS_NICE symbol, which @@ -28,6 +28,18 @@ ?H:. ?LINT:set d_nice : see if nice exists -set nice d_nice -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret, i; + ret |= nice(i); + return ret ? 0 : 1; +} +EOC +set d_nice +eval $trylink diff --git a/mcon/U/d_open3.U b/mcon/U/d_open3.U index 4d24d51..6828112 100644 --- a/mcon/U/d_open3.U +++ b/mcon/U/d_open3.U @@ -82,7 +82,7 @@ elif $test `./findhdr fcntl.h` && \ fi else val="$undef" - ./warn "I can't find the O_* constant definitions! You got problems." + ./warn "I can't find the O_* constant definitions! You got problems." 4>&4 fi set d_open3 eval $setvar diff --git a/mcon/U/d_pathconf.U b/mcon/U/d_pathconf.U index b39ccb5..e1882f4 100644 --- a/mcon/U/d_pathconf.U +++ b/mcon/U/d_pathconf.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:14:54 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_pathconf d_fpathconf: Inlibc +?MAKE:d_pathconf d_fpathconf: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_pathconf: ?S: This variable conditionally defines the HAS_PATHCONF symbol, which @@ -44,12 +44,39 @@ ?LINT:set d_pathconf ?LINT:set d_fpathconf : see if pathconf exists -set pathconf d_pathconf -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static long ret; + static int name; + ret |= pathconf("path", name); + return ret ? 0 : 1; +} +EOC +set d_pathconf +eval $trylink + @if d_fpathconf || HAS_FPATHCONF : see if fpathconf exists -set fpathconf d_fpathconf -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static long ret; + static int fd, name; + ret |= fpathconf(fd, name); + return ret ? 0 : 1; +} +EOC +set d_fpathconf +eval $trylink @end diff --git a/mcon/U/d_pause.U b/mcon/U/d_pause.U index f161b4f..6833480 100644 --- a/mcon/U/d_pause.U +++ b/mcon/U/d_pause.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:09:54 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_pause: Inlibc +?MAKE:d_pause: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_pause: ?S: This variable conditionally defines the HAS_PAUSE symbol, which @@ -29,6 +29,18 @@ ?H:. ?LINT:set d_pause : see if pause exists -set pause d_pause -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + ret |= pause(); + return ret ? 0 : 1; +} +EOC +set d_pause +eval $trylink diff --git a/mcon/U/d_perror.U b/mcon/U/d_perror.U index 56df478..b0a45a2 100644 --- a/mcon/U/d_perror.U +++ b/mcon/U/d_perror.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:45 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_perror: Inlibc +?MAKE:d_perror: Trylink cat ?MAKE: -pick add $@ %< ?S:d_perror: ?S: This variable conditionally remaps perror to a null action and @@ -39,6 +39,14 @@ ?H:. ?LINT:set d_perror : see if perror exists -set perror d_perror -eval $inlibc +$cat >try.c < +int main(void) +{ + perror("error"); + return 0; +} +EOC +set d_perror +eval $trylink diff --git a/mcon/U/d_pipe.U b/mcon/U/d_pipe.U index e139dd0..5f0e44e 100644 --- a/mcon/U/d_pipe.U +++ b/mcon/U/d_pipe.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:11:44 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_pipe: Inlibc +?MAKE:d_pipe: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_pipe: ?S: This variable conditionally defines the HAS_PIPE symbol, which @@ -29,6 +29,18 @@ ?H:. ?LINT:set d_pipe : see if pipe exists -set pipe d_pipe -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int fds[2], ret; + ret |= pipe(fds); + return ret ? 0 : 1; +} +EOC +set d_pipe +eval $trylink diff --git a/mcon/U/d_poll.U b/mcon/U/d_poll.U index 54db1b8..cc7d659 100644 --- a/mcon/U/d_poll.U +++ b/mcon/U/d_poll.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0.1.1 1995/01/11 15:26:31 ram ?RCS: patch45: created ?RCS: -?MAKE:d_poll: Inlibc +?MAKE:d_poll: Trylink cat i_poll i_syspoll ?MAKE: -pick add $@ %< ?S:d_poll: ?S: This variable conditionally defines the HAS_POLL symbol, which @@ -31,6 +31,33 @@ ?H:. ?LINT:set d_poll : see if poll exists -set poll d_poll -eval $inlibc +$cat >try.c < +#$i_syspoll I_SYS_POLL +#ifdef I_SYS_POLL +#include +#endif +#$i_poll I_POLL +#ifdef I_POLL +#include +#endif +int main(void) +{ + static int ret, timeout; + static unsigned n; + static struct pollfd pfd; + pfd.fd |= 1; + pfd.revents |= 1; + pfd.events |= POLLIN; + pfd.events |= POLLOUT; + pfd.events |= POLLPRI; + pfd.events |= POLLERR; + pfd.events |= POLLHUP; + pfd.events |= POLLNVAL; + ret |= poll(&pfd, n, timeout); + return ret ? 0 : 1; +} +EOC +set d_poll +eval $trylink diff --git a/mcon/U/d_popen.U b/mcon/U/d_popen.U index 73d5d43..ee294de 100644 --- a/mcon/U/d_popen.U +++ b/mcon/U/d_popen.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:47 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_popen: Inlibc +?MAKE:d_popen: Trylink cat ?MAKE: -pick add $@ %< ?S:d_popen: ?S: This variable conditionally defines HAS_POPEN if popen() is @@ -26,6 +26,16 @@ ?H:. ?LINT:set d_popen : see if popen exists -set popen d_popen -eval $inlibc +$cat >try.c < +int main(void) +{ + FILE *f; + + f = popen("command", "mode"); + return f ? 0 : 1; +} +EOC +set d_popen +eval $trylink diff --git a/mcon/U/d_pread.U b/mcon/U/d_pread.U index 6f55bb6..ac64dff 100644 --- a/mcon/U/d_pread.U +++ b/mcon/U/d_pread.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: d_pread.U,v $ ?RCS: -?MAKE:d_pread: Inlibc +?MAKE:d_pread: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_pread: ?S: This variable conditionally defines the HAS_PREAD symbol, which @@ -24,6 +24,23 @@ ?H:. ?LINT:set d_pread : see if pread exists -set pread d_pread -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static ssize_t ret; + static int fd; + static char buf[1]; + static size_t size; + static off_t offset; + ret |= pread(fd, buf, size, offset); + return ret ? 0 : 1; +} +EOC +set d_pread +eval $trylink diff --git a/mcon/U/d_preadv.U b/mcon/U/d_preadv.U index f0ee540..ecbbbee 100644 --- a/mcon/U/d_preadv.U +++ b/mcon/U/d_preadv.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: d_preadv.U,v $ ?RCS: -?MAKE:d_preadv: Inlibc +?MAKE:d_preadv: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_preadv: ?S: This variable conditionally defines the HAS_PREADV symbol, which @@ -25,6 +25,23 @@ ?H:. ?LINT:set d_preadv : see if preadv exists -set preadv d_preadv -eval $inlibc +$cat >try.c < +#include +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static ssize_t ret; + static int fd, iovcnt; + static struct iovec iov; + static off_t offset; + ret |= preadv(fd, &iov, iovcnt, offset); + return ret ? 0 : 1; +} +EOC +set d_preadv +eval $trylink diff --git a/mcon/U/d_psignal.U b/mcon/U/d_psignal.U index b6bbdc5..4536471 100644 --- a/mcon/U/d_psignal.U +++ b/mcon/U/d_psignal.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:49 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_psignal: Inlibc +?MAKE:d_psignal: Trylink cat ?MAKE: -pick add $@ %< ?S:d_psignal: ?S: This variable conditionally defines the HAS_PSIGNAL symbol, which @@ -26,6 +26,15 @@ ?H:. ?LINT:set d_psignal : see if psignal exists -set psignal d_psignal -eval $inlibc +$cat >try.c < +int main(void) +{ + static int sig; + psignal(sig, "signal"); + return 0; +} +EOC +set d_psignal +eval $trylink diff --git a/mcon/U/d_pwrite.U b/mcon/U/d_pwrite.U index f72fe58..2012d14 100644 --- a/mcon/U/d_pwrite.U +++ b/mcon/U/d_pwrite.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: d_pwrite.U,v $ ?RCS: -?MAKE:d_pwrite: Inlibc +?MAKE:d_pwrite: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_pwrite: ?S: This variable conditionally defines the HAS_PWRITE symbol, which @@ -24,6 +24,23 @@ ?H:. ?LINT:set d_pwrite : see if pwrite exists -set pwrite d_pwrite -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static ssize_t ret; + static int fd; + static char buf[1]; + static size_t size; + static off_t offset; + ret |= pwrite(fd, buf, size, offset); + return ret ? 0 : 1; +} +EOC +set d_pwrite +eval $trylink diff --git a/mcon/U/d_pwritev.U b/mcon/U/d_pwritev.U index 15e96dc..1dfb04d 100644 --- a/mcon/U/d_pwritev.U +++ b/mcon/U/d_pwritev.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: d_pwritev.U,v $ ?RCS: -?MAKE:d_pwritev: Inlibc +?MAKE:d_pwritev: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_pwritev: ?S: This variable conditionally defines the HAS_PWRITEV symbol, which @@ -25,6 +25,23 @@ ?H:. ?LINT:set d_pwritev : see if pwritev exists -set pwritev d_pwritev -eval $inlibc +$cat >try.c < +#include +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static ssize_t ret; + static int fd, iovcnt; + static struct iovec iov; + static off_t offset; + ret |= pwritev(fd, &iov, iovcnt, offset); + return ret ? 0 : 1; +} +EOC +set d_pwritev +eval $trylink diff --git a/mcon/U/d_rdchk.U b/mcon/U/d_rdchk.U index 0d45342..cc20393 100644 --- a/mcon/U/d_rdchk.U +++ b/mcon/U/d_rdchk.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:51 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_rdchk: Inlibc +?MAKE:d_rdchk: Trylink cat ?MAKE: -pick add $@ %< ?S:d_rdchk: ?S: This variable conditionally defines the HAS_RDCHK symbol, which @@ -28,6 +28,14 @@ ?H:. ?LINT:set d_rdchk : see if rdchk exists -set rdchk d_rdchk -eval $inlibc +$cat >try.c < inclusion -?X:INC: i_dirent -?MAKE:d_readdir d_seekdir d_telldir d_rewinddir: Inlibc +?MAKE:d_readdir d_seekdir d_telldir d_rewinddir: Trylink cat i_dirent ?MAKE: -pick add $@ %< ?S:d_readdir: ?S: This variable conditionally defines HAS_READDIR if readdir() is @@ -62,18 +60,72 @@ ?H:. ?LINT:set d_readdir d_seekdir d_telldir d_rewinddir : see if readdir and friends exist -set readdir d_readdir -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static DIR *dir; + struct dirent *ret; + ret = readdir(dir); + return ret ? 0 : 1; +} +EOC +set d_readdir +eval $trylink + @if d_seekdir || HAS_SEEKDIR -set seekdir d_seekdir -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static DIR *dir; + static long loc; + seekdir(dir, loc); + return 0; +} +EOC +set d_seekdir +eval $trylink @end @if d_telldir || HAS_TELLDIR -set telldir d_telldir -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static DIR *dir; + static long ret; + ret |= telldir(dir); + if (ret) + return 1; + return 0; +} +EOC +set d_telldir +eval $trylink @end @if d_rewinddir || HAS_REWINDDIR -set rewinddir d_rewinddir -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static DIR *dir; + rewinddir(dir); + return 0; +} +EOC +set d_rewinddir +eval $trylink @end diff --git a/mcon/U/d_readlink.U b/mcon/U/d_readlink.U index ed6f06a..bf16079 100644 --- a/mcon/U/d_readlink.U +++ b/mcon/U/d_readlink.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:11:52 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_readlink: Inlibc +?MAKE:d_readlink: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_readlink: ?S: This variable conditionally defines the HAS_READLINK symbol, which @@ -29,6 +29,20 @@ ?H:. ?LINT:set d_readlink : see if readlink exists -set readlink d_readlink -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static ssize_t ret; + static char buf[1]; + static size_t size; + ret |= readlink("path", buf, size); + return ret ? 0 : 1; +} +EOC +set d_readlink +eval $trylink diff --git a/mcon/U/d_rename.U b/mcon/U/d_rename.U index 20b3305..3af3a3f 100644 --- a/mcon/U/d_rename.U +++ b/mcon/U/d_rename.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:54 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_rename: Inlibc +?MAKE:d_rename: Trylink cat ?MAKE: -pick add $@ %< ?S:d_rename: ?S: This variable conditionally defines the HAS_RENAME symbol, which @@ -28,6 +28,15 @@ ?H:. ?LINT:set d_rename : see if rename exists -set rename d_rename -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret; + ret |= rename("old", "new"); + return ret ? 0 : 1; +} +EOC +set d_rename +eval $trylink diff --git a/mcon/U/d_rmdir.U b/mcon/U/d_rmdir.U index 078a6a0..cc77259 100644 --- a/mcon/U/d_rmdir.U +++ b/mcon/U/d_rmdir.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:56 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_rmdir: Inlibc +?MAKE:d_rmdir: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_rmdir: ?S: This variable conditionally defines HAS_RMDIR if rmdir() is @@ -27,6 +27,18 @@ ?H:. ?LINT:set d_rmdir : see if rmdir exists -set rmdir d_rmdir -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + ret |= rmdir("path"); + return ret ? 0 : 1; +} +EOC +set d_rmdir +eval $trylink diff --git a/mcon/U/d_rusage.U b/mcon/U/d_rusage.U index a2d1c33..6178f7b 100644 --- a/mcon/U/d_rusage.U +++ b/mcon/U/d_rusage.U @@ -14,7 +14,7 @@ ?RCS: ?X: We may need to include and FIXME ?X:INC: i_sysresrc i_systime -?MAKE:d_rusage: Inlibc +?MAKE:d_rusage: Trylink cat i_sysresrc ?MAKE: -pick add $@ %< ?S:d_rusage (d_getrusg): ?S: This variable conditionally defines the HAS_GETRUSAGE symbol, which @@ -31,6 +31,22 @@ ?H:. ?LINT:set d_rusage : see if getrusage exists -set getrusage d_rusage -eval $inlibc +$cat >try.c < +#include +#$i_sysresrc I_SYS_RESOURCE +#ifdef I_SYS_RESOURCE +#include +#endif +int main(void) +{ + static struct rusage ru; + static int ret; + ret |= getrusage(RUSAGE_SELF, &ru); + ret |= getrusage(RUSAGE_CHILDREN, &ru); + return ret ? 0 : 1; +} +EOC +set d_rusage +eval $trylink diff --git a/mcon/U/d_sbrk.U b/mcon/U/d_sbrk.U index 3e3ab1f..3f5bb4d 100644 --- a/mcon/U/d_sbrk.U +++ b/mcon/U/d_sbrk.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1994/01/24 14:06:31 ram ?RCS: patch16: created ?RCS: -?MAKE:d_sbrk: Inlibc +?MAKE:d_sbrk: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_sbrk: ?S: This variable conditionally defines HAS_SBRK if sbrk() is @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_sbrk : see if sbrk exists -set sbrk d_sbrk -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + void *ret; + ret = sbrk(1); + return ret ? 0 : 1; +} +EOC +set d_sbrk +eval $trylink diff --git a/mcon/U/d_scandir.U b/mcon/U/d_scandir.U index 5bffb17..1db2b63 100644 --- a/mcon/U/d_scandir.U +++ b/mcon/U/d_scandir.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1994/01/24 14:06:35 ram ?RCS: patch16: created ?RCS: -?MAKE:d_scandir: Inlibc +?MAKE:d_scandir: Trylink cat i_dirent ?MAKE: -pick add $@ %< ?S:d_scandir: ?S: This variable conditionally defines HAS_SCANDIR if scandir() is @@ -26,6 +26,32 @@ ?H:. ?LINT:set d_scandir : see if scandir exists -set scandir d_scandir -eval $inlibc +$cat >try.c < +#endif +int filter(const struct dirent *d) +{ + (void) d; + return 1; +} + +int compare(const struct dirent **a, const struct dirent **b) +{ + (void) a; + (void) b; + return 1; +} + +int main(void) +{ + static struct dirent **namelist; + static int ret; + ret |= scandir("dir", &namelist, filter, compare); + return ret ? 0 : 1; +} +EOC +set d_scandir +eval $trylink diff --git a/mcon/U/d_select.U b/mcon/U/d_select.U index 86b2d73..ac87539 100644 --- a/mcon/U/d_select.U +++ b/mcon/U/d_select.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:02 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_select: Inlibc +?MAKE:d_select: Trylink cat ?MAKE: -pick add $@ %< ?S:d_select: ?S: This variable conditionally defines HAS_SELECT if select() is @@ -28,6 +28,17 @@ ?H:. ?LINT:set d_select : see if select exists -set select d_select -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, n; + static struct fd_set r, w, x; + static struct timeval timeout; + ret |= select(n, &r, &w, &x, &timeout); + return ret ? 0 : 1; +} +EOC +set d_select +eval $trylink diff --git a/mcon/U/d_semctl.U b/mcon/U/d_semctl.U index 4029c55..d486bca 100644 --- a/mcon/U/d_semctl.U +++ b/mcon/U/d_semctl.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:04 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_semctl: Inlibc +?MAKE:d_semctl: Trylink cat ?MAKE: -pick add $@ %< ?S:d_semctl: ?S: This variable conditionally defines the HAS_SEMCTL symbol, which @@ -26,6 +26,26 @@ ?H:. ?LINT:set d_semctl : see if semctl exists -set semctl d_semctl -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, id, num; + static union semun { + int val; + struct semid_ds *buf; + unsigned short *array; + } arg; + ret |= semctl(id, num, GETVAL, &arg); + ret |= semctl(id, num, SETVAL, &arg); + ret |= semctl(id, num, GETPID, &arg); + ret |= semctl(id, num, GETNCNT, &arg); + ret |= semctl(id, num, GETZCNT, &arg); + ret |= semctl(id, num, GETALL, &arg); + ret |= semctl(id, num, SETALL, &arg); + return ret ? 0 : 1; +} +EOC +set d_semctl +eval $trylink diff --git a/mcon/U/d_semget.U b/mcon/U/d_semget.U index 2d78fcb..d2eca77 100644 --- a/mcon/U/d_semget.U +++ b/mcon/U/d_semget.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:05 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_semget: Inlibc +?MAKE:d_semget: Trylink cat ?MAKE: -pick add $@ %< ?S:d_semget: ?S: This variable conditionally defines the HAS_SEMGET symbol, which @@ -26,6 +26,19 @@ ?H:. ?LINT:set d_semget : see if semget exists -set semget d_semget -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, n, flags; + static key_t key; + key = IPC_PRIVATE; + flags |= IPC_CREAT; + flags |= IPC_EXCL; + ret |= semget(key, n, flags); + return ret ? 0 : 1; +} +EOC +set d_semget +eval $trylink diff --git a/mcon/U/d_semop.U b/mcon/U/d_semop.U index ba05864..e075475 100644 --- a/mcon/U/d_semop.U +++ b/mcon/U/d_semop.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:05 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_semop: Inlibc +?MAKE:d_semop: Trylink cat ?MAKE: -pick add $@ %< ?S:d_semop: ?S: This variable conditionally defines the HAS_SEMOP symbol, which @@ -26,6 +26,22 @@ ?H:. ?LINT:set d_semop : see if semop exists -set semop d_semop -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, id; + static size_t n; + static struct sembuf buf; + + buf.sem_num |= 1; + buf.sem_op |= 1; + buf.sem_flg |= SEM_UNDO; + buf.sem_flg |= IPC_NOWAIT; + ret |= semop(id, &buf, n); + return ret ? 0 : 1; +} +EOC +set d_semop +eval $trylink diff --git a/mcon/U/d_setegid.U b/mcon/U/d_setegid.U index f4c63a8..96871fe 100644 --- a/mcon/U/d_setegid.U +++ b/mcon/U/d_setegid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:07 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setegid: Inlibc +?MAKE:d_setegid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setegid: ?S: This variable conditionally defines the HAS_SETEGID symbol, which @@ -27,6 +27,20 @@ ?H:. ?LINT:set d_setegid : see if setegid exists -set setegid d_setegid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret; + static gid_t gid; + ret |= setegid(gid); + return ret ? 0 : 1; +} +EOC +set d_setegid +eval $trylink diff --git a/mcon/U/d_seteuid.U b/mcon/U/d_seteuid.U index b1a34c3..a23fd36 100644 --- a/mcon/U/d_seteuid.U +++ b/mcon/U/d_seteuid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:08 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_seteuid: Inlibc +?MAKE:d_seteuid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_seteuid: ?S: This variable conditionally defines the HAS_SETEUID symbol, which @@ -27,6 +27,20 @@ ?H:. ?LINT:set d_seteuid : see if seteuid exists -set seteuid d_seteuid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret; + static uid_t uid; + ret |= seteuid(uid); + return ret ? 0 : 1; +} +EOC +set d_seteuid +eval $trylink diff --git a/mcon/U/d_setgrps.U b/mcon/U/d_setgrps.U index 7fc874e..d50e555 100644 --- a/mcon/U/d_setgrps.U +++ b/mcon/U/d_setgrps.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:08 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setgrps: Inlibc +?MAKE:d_setgrps: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setgrps: ?S: This variable conditionally defines the HAS_SETGROUPS symbol, which @@ -28,6 +28,20 @@ ?H:. ?LINT:set d_setgrps : see if setgroups exists -set setgroups d_setgrps -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret, n; + static gid_t gids; + ret |= setgroups(n, &gids); + return ret ? 0 : 1; +} +EOC +set d_setgrps +eval $trylink diff --git a/mcon/U/d_setlnbuf.U b/mcon/U/d_setlnbuf.U index dffe971..ec4c7e2 100644 --- a/mcon/U/d_setlnbuf.U +++ b/mcon/U/d_setlnbuf.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:11:57 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_setlinebuf: Inlibc +?MAKE:d_setlinebuf: Trylink cat ?MAKE: -pick add $@ %< ?S:d_setlinebuf: ?S: This variable conditionally defines the HAS_SETLINEBUF symbol, which @@ -31,6 +31,14 @@ ?H:. ?LINT:set d_setlinebuf : see if setlinebuf exists -set setlinebuf d_setlinebuf -eval $inlibc +$cat >try.c < +int main(void) +{ + setlinebuf(stdout); + return 0; +} +EOC +set d_setlinebuf +eval $trylink diff --git a/mcon/U/d_setlocale.U b/mcon/U/d_setlocale.U index 09228cb..d97e5b7 100644 --- a/mcon/U/d_setlocale.U +++ b/mcon/U/d_setlocale.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/06/20 06:57:51 ram ?RCS: patch30: created ?RCS: -?MAKE:d_setlocale: Inlibc +?MAKE:d_setlocale: Trylink cat i_locale ?MAKE: -pick add $@ %< ?S:d_setlocale: ?S: This variable conditionally defines HAS_SETLOCALE if setlocale() is @@ -28,6 +28,19 @@ ?H:. ?LINT:set d_setlocale : see if setlocale exists -set setlocale d_setlocale -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int category; + static char ret; + ret |= *setlocale(category, "locale"); + return ret ? 0 : 1; +} +EOC +set d_setlocale +eval $trylink diff --git a/mcon/U/d_setpgid.U b/mcon/U/d_setpgid.U index f34e9a3..3285d45 100644 --- a/mcon/U/d_setpgid.U +++ b/mcon/U/d_setpgid.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:56 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setpgid: Inlibc +?MAKE:d_setpgid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setpgid: ?S: This variable conditionally defines the HAS_SETPGID symbol if the @@ -32,6 +32,20 @@ ?H:. ?LINT:set d_setpgid : see if setpgid exists -set setpgid d_setpgid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t pid, pgid; + static int ret; + ret |= setpgid(pid, pgid); + return ret ? 0 : 1; +} +EOC +set d_setpgid +eval $trylink diff --git a/mcon/U/d_setpgrp.U b/mcon/U/d_setpgrp.U index 08716e4..6c253ed 100644 --- a/mcon/U/d_setpgrp.U +++ b/mcon/U/d_setpgrp.U @@ -24,8 +24,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:09 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setpgrp d_bsdsetpgrp: cat rm +cc +libs +ccflags \ - +ldflags Inlibc Guess Setvar i_unistd +?MAKE:d_setpgrp d_bsdsetpgrp: Trylink Setvar cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setpgrp: ?S: This variable conditionally defines HAS_SETPGRP if setpgrp() is @@ -48,69 +47,48 @@ ?H:#$d_setpgrp HAS_SETPGRP /**/ ?H:#$d_bsdsetpgrp USE_BSD_SETPGRP /**/ ?H:. -?F:!set.c !set -?T:xxx ?LINT:set d_setpgrp d_bsdsetpgrp : see if setpgrp exists -set setpgrp d_setpgrp -eval $inlibc - -@if USE_BSD_SETPGRP || d_bsdsetpgrp -case "$d_setpgrp" in -"$define") - echo " " - echo "Checking to see which flavor of setpgrp is in use..." - $cat >set.c <try.c < +#$i_unistd I_UNISTD #ifdef I_UNISTD -# include +#include #endif -int main() +int main(void) { - if (getuid() == 0) { - printf("(I see you are running Configure as super-user...)\n"); - setuid(1); - } -#ifdef TRY_BSD_PGRP - if (-1 == setpgrp(1, 1)) - exit(0); -#else - if (setpgrp() != -1) - exit(0); + static pid_t ret, pid, pgrp; + ret |= setpgrp(pid, pgrp); + return ret ? 0 : 1; +} +EOC +set d_bsdsetpgrp +eval $trylink + +case "$d_bsdsetpgrp" in +$define) + val="$define" + set d_setpgrp + eval $setvar + ;; +*) + $cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include #endif - exit(1); +int main(void) +{ + static pid_t ret; + ret |= setpgrp(); + if (ret) + return 1; + return 0; } -EOP - if $cc -DTRY_BSD_PGRP $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then - echo 'You have to use setpgrp(pid,pgrp) instead of setpgrp().' >&4 - val="$define" - elif $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1 && ./set; then - echo 'You have to use setpgrp() instead of setpgrp(pid,pgrp).' >&4 - val="$undef" - else - echo "(I can't seem to compile and run the test program.)" - if ./usg; then - xxx="a USG one, i.e. you use setpgrp()." - else - # SVR4 systems can appear rather BSD-ish. - case "$i_unistd" in - $undef) - xxx="a BSD one, i.e. you use setpgrp(pid,pgrp)." - val="$define" - ;; - $define) - xxx="probably a USG one, i.e. you use setpgrp()." - val="$undef" - ;; - esac - fi - echo "Assuming your setpgrp is $xxx" >&4 - fi +EOC + set d_setpgrp + eval $trylink ;; -*) val="$undef";; esac -set d_bsdsetpgrp -eval $setvar -$rm -f set set.c -@end + diff --git a/mcon/U/d_setpgrp2.U b/mcon/U/d_setpgrp2.U index 665077d..e4517c3 100644 --- a/mcon/U/d_setpgrp2.U +++ b/mcon/U/d_setpgrp2.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:10 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setpgrp2: Inlibc +?MAKE:d_setpgrp2: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setpgrp2: ?S: This variable conditionally defines the HAS_SETPGRP2 symbol, which @@ -27,6 +27,20 @@ ?H:. ?LINT:set d_setpgrp2 : see if setpgrp2 exists -set setpgrp2 d_setpgrp2 -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t pid; + static int ret; + ret |= setpgrp2(pid, pid); + return ret ? 0 : 1; +} +EOC +set d_setpgrp2 +eval $trylink diff --git a/mcon/U/d_setprior.U b/mcon/U/d_setprior.U index 9f0ad79..baeebb1 100644 --- a/mcon/U/d_setprior.U +++ b/mcon/U/d_setprior.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:11 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setprior: Inlibc +?MAKE:d_setprior: Trylink cat i_sysresrc ?MAKE: -pick add $@ %< ?S:d_setprior: ?S: This variable conditionally defines HAS_SETPRIORITY if setpriority() @@ -26,6 +26,21 @@ ?H:. ?LINT:set d_setprior : see if setpriority exists -set setpriority d_setprior -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret, prio; + static id_t id; + ret |= setpriority(PRIO_PROCESS, id, prio); + ret |= setpriority(PRIO_PGRP, id, prio); + ret |= setpriority(PRIO_USER, id, prio); + return ret ? 0 : 1; +} +EOC +set d_setprior +eval $trylink diff --git a/mcon/U/d_setregid.U b/mcon/U/d_setregid.U index 642a006..6f40026 100644 --- a/mcon/U/d_setregid.U +++ b/mcon/U/d_setregid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:12 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setregid d_setresgid: Inlibc +?MAKE:d_setregid d_setresgid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setregid: ?S: This variable conditionally defines HAS_SETREGID if setregid() is @@ -39,8 +39,38 @@ ?H:. ?LINT: set d_setregid d_setresgid : see if setregid exists -set setregid d_setregid -eval $inlibc -set setresgid d_setresgid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret; + static gid_t rgid, egid; + ret |= setregid(rgid, egid); + if (ret) + return 1; + return 0; +} +EOC +set d_setregid +eval $trylink + +$cat >try.c < +#endif +int main(void) +{ + static int ret; + static gid_t rgid, egid, sgid; + ret |= setresgid(rgid, egid, sgid); + return ret ? 0 : 1; +} +EOC +set d_setresgid +eval $trylink diff --git a/mcon/U/d_setreuid.U b/mcon/U/d_setreuid.U index 2d829d6..73eb87e 100644 --- a/mcon/U/d_setreuid.U +++ b/mcon/U/d_setreuid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:13 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setreuid d_setresuid: Inlibc +?MAKE:d_setreuid d_setresuid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setreuid: ?S: This variable conditionally defines HAS_SETREUID if setreuid() is @@ -39,8 +39,38 @@ ?H:. ?LINT:set d_setreuid d_setresuid : see if setreuid exists -set setreuid d_setreuid -eval $inlibc -set setresuid d_setresuid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int +main(void) +{ + static uid_t ruid, euid; + static int ret; + ret |= setreuid(ruid, euid); + return ret ? 0 : 1; +} +EOC +set d_setreuid +eval $trylink + +: see if setresuid exists +$cat >try.c < +#endif +int main(void) +{ + static uid_t ruid, euid, suid; + static int ret; + ret |= setresuid(ruid, euid, suid); + return ret ? 0 : 1; +} +EOC +set d_setresuid +eval $trylink diff --git a/mcon/U/d_setrgid.U b/mcon/U/d_setrgid.U index 04d1770..2b6b358 100644 --- a/mcon/U/d_setrgid.U +++ b/mcon/U/d_setrgid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:14 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setrgid: Inlibc +?MAKE:d_setrgid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setrgid: ?S: This variable conditionally defines the HAS_SETRGID symbol, which @@ -27,6 +27,20 @@ ?H:. ?LINT:set d_setrgid : see if setrgid exists -set setrgid d_setrgid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret; + static gid_t gid; + ret |= setrgid(gid); + return ret ? 0 : 1; +} +EOC +set d_setrgid +eval $trylink diff --git a/mcon/U/d_setruid.U b/mcon/U/d_setruid.U index 900ca25..3e99822 100644 --- a/mcon/U/d_setruid.U +++ b/mcon/U/d_setruid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:15 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setruid: Inlibc +?MAKE:d_setruid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setruid: ?S: This variable conditionally defines the HAS_SETRUID symbol, which @@ -27,6 +27,20 @@ ?H:. ?LINT:set d_setruid : see if setruid exists -set setruid d_setruid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret; + static uid_t uid; + ret |= setruid(uid); + return ret ? 0 : 1; +} +EOC +set d_setruid +eval $trylink diff --git a/mcon/U/d_setsid.U b/mcon/U/d_setsid.U index c9e4113..7e50e27 100644 --- a/mcon/U/d_setsid.U +++ b/mcon/U/d_setsid.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:56 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_setsid: Inlibc +?MAKE:d_setsid: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_setsid: ?S: This variable conditionally defines HAS_SETSID if setsid() is @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_setsid : see if setsid exists -set setsid d_setsid -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t ret; + ret |= setsid(); + return ret ? 0 : 1; +} +EOC +set d_setsid +eval $trylink diff --git a/mcon/U/d_sgndchr.U b/mcon/U/d_sgndchr.U index 08179c9..2f28121 100644 --- a/mcon/U/d_sgndchr.U +++ b/mcon/U/d_sgndchr.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:16 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_sgndchr: cat rm +cc +ccflags Setvar +?MAKE:d_sgndchr: Trylink cat ?MAKE: -pick add $@ %< ?S:d_sgndchr: ?S: This variable conditionally defines the SIGNEDCHAR symbol, which @@ -31,29 +31,21 @@ ?C:. ?H:#$d_sgndchr SIGNEDCHAR /**/ ?H:. -?F:!try ?LINT:set d_sgndchr : check for signed chars echo " " echo "Checking to see if your C compiler can do signed chars..." >&4 -$cat >try.c <<'EOCP' -int main() +$cat >try.c <= 0); + switch (1) { + case 0: + case ((char) -1 < 0): + break; + } + return 0; } -EOCP -$cc $ccflags -o try try.c -if ./try; then - val="$define" - echo "It certainly can." -else - val="$undef" - echo "It can't. I'll have to make some things type short." -fi +EOC set d_sgndchr -eval $setvar -$rm -f try* +eval $trylink diff --git a/mcon/U/d_shmat.U b/mcon/U/d_shmat.U index 4646fc5..4089cc0 100644 --- a/mcon/U/d_shmat.U +++ b/mcon/U/d_shmat.U @@ -21,8 +21,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:18 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_shmat shmattype d_shmatprototype: Inlibc cat +cc +ccflags \ - rm cppstdin cppflags cppminus Findhdr Setvar contains +?MAKE:d_shmat shmattype d_shmatprototype: Trylink Setvar cat ?MAKE: -pick add $@ %< ?S:d_shmat: ?S: This variable conditionally defines the HAS_SHMAT symbol, which @@ -57,37 +56,79 @@ ?H:#$d_shmatprototype HAS_SHMAT_PROTOTYPE /**/ ?H:. ?LINT:set d_shmat d_shmatprototype -?T:xxx : see if shmat exists -set shmat d_shmat -eval $inlibc -: see what shmat returns +$cat >try.c < +int main(void) +{ + static int id, flags; + static void *addr; + (void) shmat(id, addr, flags); + return 0; +} +EOC +set d_shmat +eval $trylink + case "$d_shmat" in "$define") - $cat >shmat.c <<'END' + $cat >try.c < -void *shmat(); -END - if $cc $ccflags -c shmat.c >/dev/null 2>&1; then - shmattype='void *' - else - shmattype='char *' - fi - echo "and it returns ($shmattype)." >&4 - : see if a prototype for shmat is available - xxx=`./findhdr sys/shm.h` - $cppstdin $cppflags $cppminus < $xxx > shmat.c 2>/dev/null - if $contains 'shmat.*(' shmat.c >/dev/null 2>&1; then - val="$define" - else - val="$undef" - fi - $rm -f shmat.[co] - ;; -*) - val="$undef" +extern void shmat(void); +int main(void) { return 0; } +EOC + set val + eval $trylink + case "$val" in + "$define") val="$undef";; + *) val="$define";; + esac ;; +*) val="$undef";; esac + set d_shmatprototype eval $setvar +case "$d_shmat" in +"$define") + $cat >try.c < +extern void *shmat(int, const void *, int); +int main(void) { return 0; } +EOC + set val + eval $trylink + ;; +esac + +case "$d_shmat" in +"$define") + $cat >try.c < +extern void *shmat(int, void *, int); +int main(void) { return 0; } +EOC + set val + eval $trylink + case "$val" in + "$define") shmattype='void *';; + esac + ;; +esac + +case "$d_shmat" in +"$define") + $cat >try.c < +extern char *shmat(int, char *, int); +int main(void) { return 0; } +EOC + set val + eval $trylink + case "$val" in + "$define") shmattype='char *';; + esac + ;; +esac + diff --git a/mcon/U/d_shmctl.U b/mcon/U/d_shmctl.U index fc7415e..ebcfd21 100644 --- a/mcon/U/d_shmctl.U +++ b/mcon/U/d_shmctl.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:18 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_shmctl: Inlibc +?MAKE:d_shmctl: Trylink cat ?MAKE: -pick add $@ %< ?S:d_shmctl: ?S: This variable conditionally defines the HAS_SHMCTL symbol, which @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_shmctl : see if shmctl exists -set shmctl d_shmctl -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, id; + static struct shmid_ds *buf; + ret |= shmctl(id, IPC_STAT, buf); + ret |= shmctl(id, IPC_SET, buf); + ret |= shmctl(id, IPC_RMID, buf); + return ret ? 0 : 1; +} +EOC +set d_shmctl +eval $trylink diff --git a/mcon/U/d_shmdt.U b/mcon/U/d_shmdt.U index aab2aa6..d5bde48 100644 --- a/mcon/U/d_shmdt.U +++ b/mcon/U/d_shmdt.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:19 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_shmdt: Inlibc +?MAKE:d_shmdt: Trylink cat ?MAKE: -pick add $@ %< ?S:d_shmdt: ?S: This variable conditionally defines the HAS_SHMDT symbol, which @@ -26,6 +26,16 @@ ?H:. ?LINT:set d_shmdt : see if shmdt exists -set shmdt d_shmdt -eval $inlibc +$cat >try.c < +int main(void) +{ + static void *addr; + static int ret; + ret |= shmdt(addr); + return ret ? 0 : 1; +} +EOC +set d_shmdt +eval $trylink diff --git a/mcon/U/d_shmget.U b/mcon/U/d_shmget.U index 86359a0..5d68a51 100644 --- a/mcon/U/d_shmget.U +++ b/mcon/U/d_shmget.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:20 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_shmget: Inlibc +?MAKE:d_shmget: Trylink cat ?MAKE: -pick add $@ %< ?S:d_shmget: ?S: This variable conditionally defines the HAS_SHMGET symbol, which @@ -26,6 +26,20 @@ ?H:. ?LINT:set d_shmget : see if shmget exists -set shmget d_shmget -eval $inlibc +$cat >try.c < +int main(void) +{ + static key_t key = IPC_PRIVATE; + static size_t size; + static int ret, flags; + flags |= IPC_CREAT; + flags |= IPC_EXCL; + flags |= IPC_NOWAIT; + ret |= shmget(key, size, flags); + return ret ? 0 : 1; +} +EOC +set d_shmget +eval $trylink diff --git a/mcon/U/d_sigaction.U b/mcon/U/d_sigaction.U index 782f27e..6d2d64f 100644 --- a/mcon/U/d_sigaction.U +++ b/mcon/U/d_sigaction.U @@ -13,7 +13,7 @@ ?RCS: patch61: created ?RCS: ?RCS: -?MAKE:d_sigaction: Csym Setvar cat cc ccflags ldflags libs rm _o +?MAKE:d_sigaction: Trylink cat ?MAKE: -pick add $@ %< ?S:d_sigaction: ?S: This variable conditionally defines the HAS_SIGACTION symbol, which @@ -25,37 +25,20 @@ ?C:. ?H:#$d_sigaction HAS_SIGACTION /**/ ?H:. -?T:val ?LINT:set d_sigaction : see if we have sigaction -echo " " -if set sigaction val -f d_sigaction; eval $csym; $val; then - echo 'sigaction() found.' >&4 - val="$define" -else - echo 'sigaction NOT found.' >&4 - val="$undef" -fi -?X: -?X: Solaris 2.5_x86 with SunWorks Pro C 3.0.1 doesn't have a complete -?X: sigaction structure if compiled with cc -Xc. This compile test -?X: will fail then. -?X: -$cat > set.c <<'EOP' +$cat >try.c < #include #include -int main() +int main(void) { - struct sigaction act, oact; + struct sigaction act, oact; + static int ret, sig; + ret |= sigaction(sig, &act, &oact); + return ret ? 0 : 1; } -EOP -if $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1; then - : -else - echo "But you don't seem to have a useable struct sigaction." >&4 - val="$undef" -fi -set d_sigaction; eval $setvar -$rm -f set set$_o set.c +EOC +set d_sigaction +eval $trylink diff --git a/mcon/U/d_sigblock.U b/mcon/U/d_sigblock.U index 15554b7..f9c2ae8 100644 --- a/mcon/U/d_sigblock.U +++ b/mcon/U/d_sigblock.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:21 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_sigblock: Inlibc +?MAKE:d_sigblock: Trylink cat ?MAKE: -pick add $@ %< ?S:d_sigblock: ?S: This variable conditionally defines HAS_SIGBLOCK if sigblock() is @@ -26,6 +26,15 @@ ?H:. ?LINT:set d_sigblock : see if sigblock exists -set sigblock d_sigblock -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, mask; + ret |= sigblock(mask); + return ret ? 0 : 1; +} +EOC +set d_sigblock +eval $trylink diff --git a/mcon/U/d_sighold.U b/mcon/U/d_sighold.U index 31dabaa..de94d3e 100644 --- a/mcon/U/d_sighold.U +++ b/mcon/U/d_sighold.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:21 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_sighold: Inlibc +?MAKE:d_sighold: Trylink cat ?MAKE: -pick add $@ %< ?S:d_sighold: ?S: This variable conditionally defines HAS_SIGHOLD if sighold() is @@ -26,6 +26,15 @@ ?H:. ?LINT:set d_sighold : see if sighold exists -set sighold d_sighold -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, sig; + ret |= sighold(sig); + return ret ? 0 : 1; +} +EOC +set d_sighold +eval $trylink diff --git a/mcon/U/d_siglist.U b/mcon/U/d_siglist.U index 6b24db8..718a24e 100644 --- a/mcon/U/d_siglist.U +++ b/mcon/U/d_siglist.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:22 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_siglist: Csym Setvar +?MAKE:d_siglist: Trylink cat ?MAKE: -pick add $@ %< ?S:d_siglist: ?S: This variable conditionally defines HAS_SYS_SIGLIST if sys_siglist[] is @@ -26,14 +26,15 @@ ?H:. ?LINT:set d_siglist : see if sys_siglist[] exist -echo " " -if set sys_siglist val -a d_siglist; eval $csym; $val; then - echo "You have sys_siglist[] for signal description." >&4 - val="$define" -else - echo "You don't have sys_siglist[]." >&4 - val="$undef" -fi +$cat >try.c < +int main(void) +{ + static char c; + c |= *sys_siglist[0]; + return c ? 0 : 1 +} +EOC set d_siglist -eval $setvar +eval $trylink diff --git a/mcon/U/d_sigsetjmp.U b/mcon/U/d_sigsetjmp.U index 427933f..8a1d474 100644 --- a/mcon/U/d_sigsetjmp.U +++ b/mcon/U/d_sigsetjmp.U @@ -58,8 +58,6 @@ ?F:!set ?LINT:set d_sigsetjmp : see if sigsetjmp exists -?X: We can't check for these symbols with Inlibc because sigsetjmp -?X: is (sometimes? always?) a macro under GCC echo " " case "$d_sigsetjmp" in '') diff --git a/mcon/U/d_sigsetmk.U b/mcon/U/d_sigsetmk.U index ff07e8d..f227aae 100644 --- a/mcon/U/d_sigsetmk.U +++ b/mcon/U/d_sigsetmk.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:23 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_sigsetmk: Csym Setvar +?MAKE:d_sigsetmk: Trylink cat ?MAKE: -pick add $@ %< ?S:d_sigsetmk: ?S: This variable conditionally defines the HAS_SIGSETMASK symbol, which @@ -28,14 +28,15 @@ ?H:. ?LINT:set d_sigsetmk : see if sigsetmask exists -echo " " -if set sigsetmask val -f d_sigsetmk; eval $csym; $val; then - echo 'sigsetmask() found.' >&4 - val="$define" -else - echo "sigsetmask() not found -- We'll use signal()." >&4 - val="$undef" -fi +$cat >try.c < +int main(void) +{ + static int ret, mask; + ret |= sigsetmask(mask); + return ret ? 0 : 1; +} +EOC set d_sigsetmk -eval $setvar +eval $trylink diff --git a/mcon/U/d_sigvec.U b/mcon/U/d_sigvec.U index cfff2f1..d23c298 100644 --- a/mcon/U/d_sigvec.U +++ b/mcon/U/d_sigvec.U @@ -17,7 +17,7 @@ ?RCS: ?X: d_sigvec.U, from d_ftime.U 1.0 ?X: -?MAKE:d_sigvec d_sigvectr d_sigintrp: Csym Inlibc Setvar +?MAKE:d_sigvec d_sigvectr d_sigintrp: Trylink cat ?MAKE: -pick add $@ %< ?S:d_sigvec: ?S: This variable conditionally defines the HAS_SIGVEC symbol, which indicates @@ -49,31 +49,48 @@ ?H:#$d_sigvectr HAS_SIGVECTOR /**/ ?H:#$d_sigintrp HAS_SIGINTRP /**/ ?H:. -?T:val -?LINT:set d_sigvec d_sigintrp +?LINT:set d_sigvec d_sigvectr d_sigintrp @if d_sigvectr || d_sigvec || HAS_SIGVEC || HAS_SIGVECTOR -: see if sigvector exists -- since sigvec will match the substring -echo " " -if set sigvector val -f d_sigvectr; eval $csym; $val; then - echo 'sigvector() found--you must be running HP-UX.' >&4 - val="$define"; set d_sigvectr; eval $setvar - val="$define"; set d_sigvec; eval $setvar -else -: try the original name - d_sigvectr="$undef" - if set sigvec val -f d_sigvec; eval $csym; $val; then - echo 'sigvec() found.' >&4 - val="$define"; set d_sigvec; eval $setvar - else - echo 'sigvec() not found--race conditions with signals may occur.' >&4 - val="$undef"; set d_sigvec; eval $setvar - fi -fi +: see if sigvector exists +$cat >try.c < +int main(void) +{ + static int ret, sig; + struct sigvec vec, ovec; + ret |= sigvector(sig, &vec, &ovec); + return ret ? 0 : 1; +} +EOC +set d_sigvectr +eval $trylink + +$cat >try.c < +int main(void) +{ + static int ret, sig; + struct sigvec vec, ovec; + ret |= sigvec(sig, &vec, &ovec); + return ret ? 0 : 1; +} +EOC +set d_sigvec +eval $trylink @end @if d_sigintrp || HAS_SIGINTRP : see if we have siginterrupt -set siginterrupt d_sigintrp -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, sig, flag; + ret |= siginterrupt(sig, flag); + return ret ? 0 : 1; +} +EOC +set d_sigintrp +eval $trylink @end diff --git a/mcon/U/d_socket.U b/mcon/U/d_socket.U index f7d59d4..e79cc82 100644 --- a/mcon/U/d_socket.U +++ b/mcon/U/d_socket.U @@ -19,7 +19,7 @@ ?RCS: Baseline for dist 3.0 netwide release. ?RCS: ?MAKE:d_socket d_oldsock d_sockpair socketlib sockethdr: contains libc \ - echo n c nm_opt nm_extract Inlibc Csym _a + echo n c nm_opt nm_extract Trylink Csym _a cat ?MAKE: -pick add $@ %< ?S:d_socket: ?S: This variable conditionally defines HAS_SOCKET, which indicates @@ -117,7 +117,16 @@ fi @if HAS_SOCKETPAIR || d_sockpair : see if socketpair exists -set socketpair d_sockpair -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret, domain, type, protocol, sv[2]; + ret |= socketpair(domain, type, protocol, sv); + return ret ? 0 : 1; +} +EOC +set d_sockpair +eval $trylink @end diff --git a/mcon/U/d_stat.U b/mcon/U/d_stat.U index d669876..8c0a9e5 100644 --- a/mcon/U/d_stat.U +++ b/mcon/U/d_stat.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:28 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_stat: Inlibc +?MAKE:d_stat: Trylink cat i_sysstat ?MAKE: -pick add $@ %< ?S:d_stat: ?S: This variable conditionally defines HAS_STAT if stat() is @@ -26,6 +26,19 @@ ?H:. ?LINT:set d_stat : see if stat exists -set stat d_stat -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static struct stat sb; + static int ret; + ret |= stat("path", &sb); + return ret ? 0 : 1; +} +EOC +set d_stat +eval $trylink diff --git a/mcon/U/d_strccmp.U b/mcon/U/d_strccmp.U index 0b36c24..c914273 100644 --- a/mcon/U/d_strccmp.U +++ b/mcon/U/d_strccmp.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:24 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_strccmp: Inlibc +?MAKE:d_strccmp: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strccmp: ?S: This variable conditionally defines the HAS_STRCASECMP symbol, which @@ -33,6 +33,16 @@ ?H:. ?LINT:set d_strccmp : see if strcasecmp exists -set strcasecmp d_strccmp -eval $inlibc +$cat >try.c < +int +main(void) +{ + static int ret; + ret |= strcasecmp("xxx", "XXX"); + return ret ? 0 : 1; +} +EOC +set d_strccmp +eval $trylink diff --git a/mcon/U/d_strchr.U b/mcon/U/d_strchr.U index ce28b6e..f845878 100644 --- a/mcon/U/d_strchr.U +++ b/mcon/U/d_strchr.U @@ -19,7 +19,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:32 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_strchr d_index: contains strings Setvar Myread Oldconfig Csym +?MAKE:d_strchr d_index: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strchr: ?S: This variable conditionally defines HAS_STRCHR if strchr() and @@ -55,41 +55,31 @@ ?M:#endif ?M:#endif ?M:. -?T:vali ?LINT:set d_strchr d_index : index or strchr -echo " " -if set index val -f; eval $csym; $val; then - if set strchr val -f d_strchr; eval $csym; $val; then - if $contains strchr "$strings" >/dev/null 2>&1 ; then -?X: has index, strchr, and strchr in string header - val="$define" - vali="$undef" - echo "strchr() found." >&4 - else -?X: has index, strchr, and no strchr in string header - val="$undef" - vali="$define" - echo "index() found." >&4 - fi - else -?X: has only index, no strchr, string header is a moot point - val="$undef" - vali="$define" - echo "index() found." >&4 - fi -else - if set strchr val -f d_strchr; eval $csym; $val; then - val="$define" - vali="$undef" - echo "strchr() found." >&4 - else - echo "No index() or strchr() found!" >&4 - val="$undef" - vali="$undef" - fi -fi -set d_strchr; eval $setvar -val="$vali" -set d_index; eval $setvar +$cat >try.c < +int main(void) +{ + static char ret; + static int c; + ret |= *strchr("string", c); + return ret ? 0 : 1; +} +EOC +set d_strchr +eval $trylink + +$cat >try.c < +int main(void) +{ + static char ret; + static int c; + ret |= *index("string", c); + return ret ? 0 : 1; +} +EOC +set d_index +eval $trylink diff --git a/mcon/U/d_strcoll.U b/mcon/U/d_strcoll.U index 0ba2ba1..f5ab7b3 100644 --- a/mcon/U/d_strcoll.U +++ b/mcon/U/d_strcoll.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:12:01 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_strcoll: Inlibc +?MAKE:d_strcoll: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strcoll: ?S: This variable conditionally defines HAS_STRCOLL if strcoll() is @@ -28,6 +28,15 @@ ?H:. ?LINT:set d_strcoll : see if strcoll exists -set strcoll d_strcoll -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret; + ret |= strcoll("A", "B"); + return ret ? 0 : 1; +} +EOC +set d_strcoll +eval $trylink diff --git a/mcon/U/d_strcspn.U b/mcon/U/d_strcspn.U index 04097ef..df4052f 100644 --- a/mcon/U/d_strcspn.U +++ b/mcon/U/d_strcspn.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:33 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_strcspn: Inlibc +?MAKE:d_strcspn: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strcspn: ?S: This variable conditionally defines the HAS_STRCSPN symbol, which @@ -27,6 +27,15 @@ ?H:. ?LINT:set d_strcspn : see if strcspn exists -set strcspn d_strcspn -eval $inlibc +$cat >try.c < +int main(void) +{ + size_t ret; + ret |= strcspn("abc", "x"); + return ret ? 0 : 1; +} +EOC +set d_strcspn +eval $trylink diff --git a/mcon/U/d_strdup.U b/mcon/U/d_strdup.U index 9a948a9..e3dcfac 100644 --- a/mcon/U/d_strdup.U +++ b/mcon/U/d_strdup.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0.1.1 1993/12/15 08:21:41 ram ?RCS: patch15: created ?RCS: -?MAKE:d_strdup: Inlibc +?MAKE:d_strdup: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strdup: ?S: This variable conditionally defines HAS_STRDUP if strdup() is @@ -27,6 +27,16 @@ ?H:. ?LINT:set d_strdup : see if strdup exists -set strdup d_strdup -eval $inlibc +$cat >try.c < +int main(void) +{ + static char ret; + + ret |= *strdup("x"); + return ret ? 0 : 1; +} +EOC +set d_strdup +eval $trylink diff --git a/mcon/U/d_strftime.U b/mcon/U/d_strftime.U index c634105..f66044d 100644 --- a/mcon/U/d_strftime.U +++ b/mcon/U/d_strftime.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:36 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_strftime: Inlibc +?MAKE:d_strftime: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strftime: ?S: This variable conditionally defines HAS_STRFTIME if strftime() is @@ -26,6 +26,17 @@ ?H:. ?LINT:set d_strftime : see if strftime exists -set strftime d_strftime -eval $inlibc +$cat >try.c < +int main(void) +{ + static size_t ret, size; + static struct tm tm; + static char buf[1]; + ret |= strftime(buf, size, "%Y-%m-%d", &tm); + return ret ? 0 : 1; +} +EOC +set d_strftime +eval $trylink diff --git a/mcon/U/d_strstr.U b/mcon/U/d_strstr.U index 022359a..6edb716 100644 --- a/mcon/U/d_strstr.U +++ b/mcon/U/d_strstr.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:37 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_strstr: Inlibc +?MAKE:d_strstr: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strstr: ?S: This variable conditionally defines HAS_STRSTR if strstr() is @@ -26,6 +26,15 @@ ?H:. ?LINT:set d_strstr : see if strstr exists -set strstr d_strstr -eval $inlibc +$cat >try.c < +int main(void) +{ + static char ret; + ret |= *strstr("abc", "b"); + return ret ? 0 : 1; +} +EOC +set d_strstr +eval $trylink diff --git a/mcon/U/d_strtod.U b/mcon/U/d_strtod.U index 13e6dee..9efb603 100644 --- a/mcon/U/d_strtod.U +++ b/mcon/U/d_strtod.U @@ -14,7 +14,7 @@ ?RCS: patch61: created ?RCS: ?RCS: -?MAKE:d_strtod: Inlibc +?MAKE:d_strtod: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_strtod: ?S: This variable conditionally defines the HAS_STRTOD symbol, which @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_strtod : see if strtod exists -set strtod d_strtod -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static double ret; + static char *endptr; + ret = strtod("1.0", &endptr) * 1.0; + return ret ? 0 : 1; +} +EOC +set d_strtod +eval $trylink diff --git a/mcon/U/d_strtok.U b/mcon/U/d_strtok.U index d6cf2f1..f5a01bc 100644 --- a/mcon/U/d_strtok.U +++ b/mcon/U/d_strtok.U @@ -16,7 +16,7 @@ ?X: The strtok routine now appears to be a standard one, but it was ?X: missing in early BSD systems. ?X: -?MAKE:d_strtok: Inlibc +?MAKE:d_strtok: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strtok: ?S: This variable conditionally defines HAS_STRTOK if strtok() is @@ -30,6 +30,15 @@ ?H:. ?LINT:set d_strtok : see if strtok exists -set strtok d_strtok -eval $inlibc +$cat >try.c < +int main(void) +{ + static char s[] = "a.b.c", ret; + ret |= *strtok(s, "."); + return ret ? 0 : 1; +} +EOC +set d_strtok +eval $trylink diff --git a/mcon/U/d_strtol.U b/mcon/U/d_strtol.U index 1d84274..032bfe7 100644 --- a/mcon/U/d_strtol.U +++ b/mcon/U/d_strtol.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:39 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_strtol: Inlibc +?MAKE:d_strtol: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_strtol: ?S: This variable conditionally defines the HAS_STRTOL symbol, which @@ -27,6 +27,19 @@ ?H:. ?LINT:set d_strtol : see if strtol exists -set strtol d_strtol -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static long ret; + static char *endptr; + ret |= strtol("1234", &endptr, 10); + return ret ? 0 : 1; +} +EOC +set d_strtol +eval $trylink diff --git a/mcon/U/d_strtoul.U b/mcon/U/d_strtoul.U index 54d79e4..abc000e 100644 --- a/mcon/U/d_strtoul.U +++ b/mcon/U/d_strtoul.U @@ -14,7 +14,7 @@ ?RCS: patch61: created ?RCS: ?RCS: -?MAKE:d_strtoul: Inlibc +?MAKE:d_strtoul: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_strtoul: ?S: This variable conditionally defines the HAS_STRTOUL symbol, which @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_strtoul : see if strtoul exists -set strtoul d_strtoul -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static unsigned long ret; + static char *endptr; + ret |= strtoul("1234", &endptr, 10); + return ret ? 0 : 1; +} +EOC +set d_strtoul +eval $trylink diff --git a/mcon/U/d_strxfrm.U b/mcon/U/d_strxfrm.U index 898a30f..c696e20 100644 --- a/mcon/U/d_strxfrm.U +++ b/mcon/U/d_strxfrm.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:12:04 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_strxfrm: Inlibc +?MAKE:d_strxfrm: Trylink cat ?MAKE: -pick add $@ %< ?S:d_strxfrm: ?S: This variable conditionally defines HAS_STRXFRM if strxfrm() is @@ -28,6 +28,16 @@ ?H:. ?LINT:set d_strxfrm : see if strxfrm exists -set strxfrm d_strxfrm -eval $inlibc +$cat >try.c < +int main(void) +{ + static size_t ret, n; + static char dst[] = "xxx", *src; + ret |= strxfrm(dst, src, n); + return ret ? 0 : 1; +} +EOC +set d_strxfrm +eval $trylink diff --git a/mcon/U/d_symlink.U b/mcon/U/d_symlink.U index f95c4da..0d476a3 100644 --- a/mcon/U/d_symlink.U +++ b/mcon/U/d_symlink.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:41 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_symlink: Inlibc +?MAKE:d_symlink: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_symlink: ?S: This variable conditionally defines the HAS_SYMLINK symbol, which @@ -27,6 +27,18 @@ ?H:. ?LINT:set d_symlink : see if symlink exists -set symlink d_symlink -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + ret |= symlink("name1", "name2"); + return ret ? 0 : 1; +} +EOC +set d_symlink +eval $trylink diff --git a/mcon/U/d_syscall.U b/mcon/U/d_syscall.U index 4620b04..96e9d27 100644 --- a/mcon/U/d_syscall.U +++ b/mcon/U/d_syscall.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:42 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_syscall: Inlibc +?MAKE:d_syscall: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_syscall: ?S: This variable conditionally defines HAS_SYSCALL if syscall() is @@ -26,6 +26,19 @@ ?H:. ?LINT:set d_syscall : see if syscall exists -set syscall d_syscall -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret, number; + ret |= syscall(number, 0); + return ret ? 0 : 1; +} +EOC +set d_syscall +eval $trylink diff --git a/mcon/U/d_sysconf.U b/mcon/U/d_sysconf.U index 13c6177..3678592 100644 --- a/mcon/U/d_sysconf.U +++ b/mcon/U/d_sysconf.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:15:57 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_sysconf: Inlibc +?MAKE:d_sysconf: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_sysconf: ?S: This variable conditionally defines the HAS_SYSCONF symbol, which @@ -29,6 +29,18 @@ ?H:. ?LINT:set d_sysconf : see if sysconf exists -set sysconf d_sysconf -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static long ret; + ret |= sysconf(1); + return ret ? 0 : 1; +} +EOC +set d_sysconf +eval $trylink diff --git a/mcon/U/d_syslog.U b/mcon/U/d_syslog.U index 8245d48..ca80d27 100644 --- a/mcon/U/d_syslog.U +++ b/mcon/U/d_syslog.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:43 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_syslog: test Csym Setvar Findhdr +?MAKE:d_syslog: Trylink cat ?MAKE: -pick add $@ %< ?S:d_syslog: ?S: This variable conditionally defines the HAS_SYSLOG symbol, which @@ -30,15 +30,15 @@ ?H:. ?LINT:set d_syslog : see if syslog is available -echo " " -if $test `./findhdr syslog.h` && \ - (set syslog val -f d_syslog; eval $csym; $val); then - echo "syslog() found." >&4 - val="$define" -else - echo "syslog() not found in your C library." >&4 - val="$undef" -fi +$cat >try.c < +int main(void) +{ + static int priority; + syslog(priority, "%s", "msg"); + return 0; +} +EOC set d_syslog -eval $setvar +eval $trylink diff --git a/mcon/U/d_system.U b/mcon/U/d_system.U index cd8737c..bedd1ef 100644 --- a/mcon/U/d_system.U +++ b/mcon/U/d_system.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:44 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_system: Inlibc +?MAKE:d_system: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_system: ?S: This variable conditionally defines HAS_SYSTEM if system() is @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_system : see if system exists -set system d_system -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static int ret; + ret |= system("command"); + return ret ? 0 : 1; +} +EOC +set d_system +eval $trylink diff --git a/mcon/U/d_table.U b/mcon/U/d_table.U index 1144456..bc059ae 100644 --- a/mcon/U/d_table.U +++ b/mcon/U/d_table.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0.1.1 1993/10/16 13:49:29 ram ?RCS: patch12: created ?RCS: -?MAKE:d_table: Inlibc +?MAKE:d_table: Trylink cat ?MAKE: -pick add $@ %< ?S:d_table: ?S: This variable conditionally defines HAS_TABLE if table() is @@ -29,6 +29,16 @@ ?H:. ?LINT:set d_table : see if table exists -set table d_table -eval $inlibc +$cat >try.c < +int main(void) +{ + static int ret; + static void *addr; + ret |= table(1, 2L, addr, 3L, 4L, 5L); + return ret ? 0 : 1; +} +EOC +set d_table +eval $trylink diff --git a/mcon/U/d_tcgtpgrp.U b/mcon/U/d_tcgtpgrp.U index 61d0f59..17c1f29 100644 --- a/mcon/U/d_tcgtpgrp.U +++ b/mcon/U/d_tcgtpgrp.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:12:08 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_tcgetpgrp: Inlibc +?MAKE:d_tcgetpgrp: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_tcgetpgrp: ?S: This variable conditionally defines the HAS_TCGETPGRP symbol, which @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_tcgetpgrp : see if tcgetpgrp exists -set tcgetpgrp d_tcgetpgrp -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t ret; + ret |= tcgetpgrp(1); + return ret ? 0 : 1; +} +EOC +set d_tcgetpgrp +eval $trylink diff --git a/mcon/U/d_tcstpgrp.U b/mcon/U/d_tcstpgrp.U index ba7aa42..03c2321 100644 --- a/mcon/U/d_tcstpgrp.U +++ b/mcon/U/d_tcstpgrp.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:12:11 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_tcsetpgrp: Inlibc +?MAKE:d_tcsetpgrp: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_tcsetpgrp: ?S: This variable conditionally defines the HAS_TCSETPGRP symbol, which @@ -29,6 +29,20 @@ ?H:. ?LINT:set d_tcsetpgrp : see if tcsetpgrp exists -set tcsetpgrp d_tcsetpgrp -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int fd, ret; + static pid_t pid; + ret |= tcsetpgrp(fd, pid); + return ret ? 0 : 1; +} +EOC +set d_tcsetpgrp +eval $trylink diff --git a/mcon/U/d_truncate.U b/mcon/U/d_truncate.U index 75ca730..59386f2 100644 --- a/mcon/U/d_truncate.U +++ b/mcon/U/d_truncate.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:48 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_truncate: Inlibc +?MAKE:d_truncate: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_truncate: ?S: This variable conditionally defines HAS_TRUNCATE if truncate() is @@ -26,6 +26,20 @@ ?H:. ?LINT:set d_truncate : see if truncate exists -set truncate d_truncate -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret; + static off_t length; + ret |= truncate("path", length); + return ret ? 0 : 1; +} +EOC +set d_truncate +eval $trylink diff --git a/mcon/U/d_tzname.U b/mcon/U/d_tzname.U index 4cc2302..2be7aee 100644 --- a/mcon/U/d_tzname.U +++ b/mcon/U/d_tzname.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0.1.1 1994/06/20 06:57:55 ram ?RCS: patch30: created ?RCS: -?MAKE:d_tzname: Csym Setvar +?MAKE:d_tzname: Trylink cat ?MAKE: -pick add $@ %< ?S:d_tzname: ?S: This variable conditionally defines HAS_TZNAME if tzname[] is @@ -29,14 +29,16 @@ ?H:. ?LINT:set d_tzname : see if tzname[] exists -echo " " -if set tzname val -a d_tzname; eval $csym; $val; then - val="$define" - echo 'tzname[] found.' >&4 -else - val="$undef" - echo 'tzname[] NOT found.' >&4 -fi +$cat >try.c < +int main(void) +{ + extern char *tzname[]; + static char c; + c |= *tzname[0]; + return c ? 0 : 1; +} +EOC set d_tzname -eval $setvar +eval $trylink diff --git a/mcon/U/d_ulimit.U b/mcon/U/d_ulimit.U index da2e54a..1881772 100644 --- a/mcon/U/d_ulimit.U +++ b/mcon/U/d_ulimit.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:51 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_ulimit: Inlibc +?MAKE:d_ulimit: Trylink cat ?MAKE: -pick add $@ %< ?S:d_ulimit: ?S: This variable conditionally defines HAS_ULIMIT if ulimit() is @@ -26,6 +26,16 @@ ?H:. ?LINT:set d_ulimit : see if ulimit exists -set ulimit d_ulimit -eval $inlibc +$cat >try.c < +int main(void) +{ + static long ret; + ret |= ulimit(UL_GETFSIZE); + ret |= ulimit(UL_SETFSIZE, 1L); + return ret ? 0 : 1; +} +EOC +set d_ulimit +eval $trylink diff --git a/mcon/U/d_umask.U b/mcon/U/d_umask.U index bee9d02..add2552 100644 --- a/mcon/U/d_umask.U +++ b/mcon/U/d_umask.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:14:50 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_umask: Inlibc +?MAKE:d_umask: Trylink cat i_sysstat ?MAKE: -pick add $@ %< ?S:d_umask: ?S: This variable conditionally defines the HAS_UMASK symbol, which @@ -29,6 +29,19 @@ ?H:. ?LINT:set d_umask : see if umask exists -set umask d_umask -eval $inlibc +$cat >try.c < +#$i_sysstat I_SYS_STAT +#ifdef I_SYS_STAT +#include +#endif +int main(void) +{ + mode_t ret, mask; + ret |= umask(mask); + return ret ? 0 : 1; +} +EOC +set d_umask +eval $trylink diff --git a/mcon/U/d_usleep.U b/mcon/U/d_usleep.U index b6dee14..9c9fc7f 100644 --- a/mcon/U/d_usleep.U +++ b/mcon/U/d_usleep.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:53 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_usleep: Inlibc +?MAKE:d_usleep: Trylink cat i_unistd ?MAKE: -pick add $@ %< ?S:d_usleep: ?S: This variable conditionally defines HAS_USLEEP if usleep() is @@ -26,6 +26,18 @@ ?H:. ?LINT:set d_usleep : see if usleep exists -set usleep d_usleep -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static unsigned ret; + ret |= usleep(1); + return ret ? 0 : 1; +} +EOC +set d_usleep +eval $trylink diff --git a/mcon/U/d_vfork.U b/mcon/U/d_vfork.U index 9bd7089..492e42a 100644 --- a/mcon/U/d_vfork.U +++ b/mcon/U/d_vfork.U @@ -31,7 +31,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:55 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_vfork usevfork: Inlibc Myread Oldconfig Setvar +?MAKE:d_vfork usevfork: Trylink Myread Oldconfig Setvar cat i_unistd ?MAKE: -pick add $@ %< ?S:d_vfork: ?S: This variable conditionally defines the HAS_VFORK symbol, which @@ -54,9 +54,22 @@ ?M:. ?LINT:set d_vfork : see if there is a vfork -val='' -set vfork val -eval $inlibc +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static pid_t ret; + ret |= vfork(); + return ret ? 0 : 1; +} +EOC +set val +eval $trylink + : Ok, but do we want to use it. vfork is reportedly unreliable in : perl on Solaris 2.x, and probably elsewhere. diff --git a/mcon/U/d_wait3.U b/mcon/U/d_wait3.U index 16a92b0..d49d440 100644 --- a/mcon/U/d_wait3.U +++ b/mcon/U/d_wait3.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:08:01 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_wait3: Inlibc +?MAKE:d_wait3: Trylink cat i_sysresrc i_syswait ?MAKE: -pick add $@ %< ?S:d_wait3: ?S: This variable conditionally defines the HAS_WAIT3 symbol, which @@ -26,6 +26,27 @@ ?H:. ?LINT:set d_wait3 : see if 'wait3()' exists -set wait3 d_wait3 -eval $inlibc +$cat >try.c < +#$i_syswait I_SYS_WAIT +#ifdef I_SYS_WAIT +#include +#endif +#$i_sysresrc I_SYS_RESOURCE +#ifdef I_SYS_RESOURCE +#include +#endif +int main(void) +{ + static pid_t ret; + static int status, options; + static struct rusage ru; + options |= WNOHANG; + options |= WUNTRACED; + ret |= wait3(&status, options, &ru); + return ret ? 0 : 1; +} +EOC +set d_wait3 +eval $trylink diff --git a/mcon/U/d_wait4.U b/mcon/U/d_wait4.U index eadb82b..8de008b 100644 --- a/mcon/U/d_wait4.U +++ b/mcon/U/d_wait4.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:08:01 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_wait4: Inlibc +?MAKE:d_wait4: Trylink cat i_sysresrc i_syswait ?MAKE: -pick add $@ %< ?S:d_wait4: ?S: This variable conditionally defines the HAS_WAIT4 symbol, which @@ -25,6 +25,27 @@ ?H:. ?LINT:set d_wait4 : see if there is a wait4 -set wait4 d_wait4 -eval $inlibc +$cat >try.c < +#$i_syswait I_SYS_WAIT +#ifdef I_SYS_WAIT +#include +#endif +#$i_sysresrc I_SYS_RESOURCE +#ifdef I_SYS_RESOURCE +#include +#endif +int main(void) +{ + static pid_t ret, pid; + static int status, options; + static struct rusage ru; + options |= WNOHANG; + options |= WUNTRACED; + ret |= wait4(pid, &status, options, &ru); + return ret ? 0 : 1; +} +EOC +set d_wait4 +eval $trylink diff --git a/mcon/U/d_waitpid.U b/mcon/U/d_waitpid.U index f0e4c53..892eb7d 100644 --- a/mcon/U/d_waitpid.U +++ b/mcon/U/d_waitpid.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:08:02 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_waitpid: Inlibc +?MAKE:d_waitpid: Trylink cat i_syswait ?MAKE: -pick add $@ %< ?S:d_waitpid: ?S: This variable conditionally defines HAS_WAITPID if waitpid() is @@ -26,6 +26,22 @@ ?H:. ?LINT:set d_waitpid : see if waitpid exists -set waitpid d_waitpid -eval $inlibc +$cat >try.c < +#$i_syswait I_SYS_WAIT +#ifdef I_SYS_WAIT +#include +#endif +int main(void) +{ + static pid_t ret, pid; + static int status, options; + options |= WNOHANG; + options |= WUNTRACED; + ret |= waitpid(pid, &status, options); + return ret ? 0 : 1; +} +EOC +set d_waitpid +eval $trylink diff --git a/mcon/U/d_wcstombs.U b/mcon/U/d_wcstombs.U index e68ff9d..2305de3 100644 --- a/mcon/U/d_wcstombs.U +++ b/mcon/U/d_wcstombs.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:08:03 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_wcstombs: Inlibc +?MAKE:d_wcstombs: Trylink cat i_stdlib ?MAKE: -pick add $@ %< ?S:d_wcstombs: ?S: This variable conditionally defines the HAS_WCSTOMBS symbol, which @@ -27,6 +27,20 @@ ?H:. ?LINT:set d_wcstombs : see if wcstombs exists -set wcstombs d_wcstombs -eval $inlibc +$cat >try.c < +#endif +int main(void) +{ + static size_t ret, n; + static wchar_t wcs; + static char buf[1]; + ret |= wcstombs(buf, &wcs, n); + return ret ? 0 : 1; +} +EOC +set d_wcstombs +eval $trylink diff --git a/mcon/U/d_wctomb.U b/mcon/U/d_wctomb.U index 41724ab..5cfa9fa 100644 --- a/mcon/U/d_wctomb.U +++ b/mcon/U/d_wctomb.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:20:43 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:d_wctomb: Inlibc +?MAKE:d_wctomb: Trylink cat i_stdlib i_limits ?MAKE: -pick add $@ %< ?S:d_wctomb: ?S: This variable conditionally defines the HAS_WCTOMB symbol, which @@ -29,6 +29,24 @@ ?H:. ?LINT:set d_wctomb : see if wctomb exists -set wctomb d_wctomb -eval $inlibc +$cat >try.c < +#endif +#$i_limits I_LIMITS +#ifdef I_LIMITS +#include +#endif +int main(void) +{ + static int ret; + static char dst[MB_LEN_MAX]; + static wchar_t wc; + ret |= wctomb(dst, wc); + return ret ? 0 : 1; +} +EOC +set d_wctomb +eval $trylink diff --git a/mcon/U/gccvers.U b/mcon/U/gccvers.U index 6d05184..7184655 100644 --- a/mcon/U/gccvers.U +++ b/mcon/U/gccvers.U @@ -45,7 +45,8 @@ gcc_version_patchlevel __GNUC_PATCHLEVEL__ EOM if $cc -E try.c > try 2>&1 then - gccversion=`sed -n 's/^gcc_version_major[^0-9]*//p' try` + gccversion=`$grep gcc_version_major try | + sed 's/^.*gcc_version_major[\t ]*//'` case "$gccversion" in '') echo "You are not using GNU cc." ;; *) echo "You are using GNU cc $gccversion." diff --git a/mcon/U/i_dbm.U b/mcon/U/i_dbm.U index a0e5c13..b116be0 100644 --- a/mcon/U/i_dbm.U +++ b/mcon/U/i_dbm.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:08:15 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:i_dbm i_rpcsvcdbm: Inhdr Inlibc Setvar +?MAKE:i_dbm i_rpcsvcdbm: Inhdr Trylink Setvar cat ?MAKE: -pick add $@ %< ?S:i_dbm (d_odbm): ?S: This variable conditionally defines the I_DBM symbol, which @@ -49,31 +49,47 @@ ?X: some versions of SCO Unix have -ldbm, but are missing dbmclose(). -- ADO ?X: Some System V systems have instead of . : see if dbmclose exists -set dbmclose d_dbmclose -eval $inlibc +$cat >try.c < +int main(void) +{ + dbmclose(); + return 0; +} +EOC +set d_dbmclose +eval $trylink case "$d_dbmclose" in $define) - set dbm.h i_dbm - eval $inhdr - case "$i_dbm" in - $define) - val="$undef" - set i_rpcsvcdbm - eval $setvar - ;; - *) set rpcsvc/dbm.h i_rpcsvcdbm - eval $inhdr - ;; - esac - ;; -*) echo "We won't be including " val="$undef" + set i_rpcsvcdbm + eval $setvar + + val="$define" set i_dbm eval $setvar - val="$undef" + ;; +*) + $cat >try.c < +int main(void) +{ + static int ret; + ret |= dbmclose(); + return ret ? 0 : 1; +} +EOC + set d_dbmclose + eval $trylink + + val="$define" set i_rpcsvcdbm eval $setvar + + val="$undef" + set i_dbm + eval $setvar ;; esac diff --git a/mcon/U/i_gdbm.U b/mcon/U/i_gdbm.U index c9cdbf0..81ceeba 100644 --- a/mcon/U/i_gdbm.U +++ b/mcon/U/i_gdbm.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:08:19 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:i_gdbm: Inhdr Inlibc Setvar +?MAKE:i_gdbm: Trylink cat ?MAKE: -pick add $@ %< ?S:i_gdbm (d_gdbm): ?S: This variable conditionally defines the I_GDBM symbol, which @@ -28,26 +28,19 @@ ?C:. ?H:#$i_gdbm I_GDBM /**/ ?H:. -?T:t_gdbm d_gdbm_open ?LINT:set i_gdbm : see if gdbm.h is available -?X: t_gdbm is a tentative check. We might just have the .h, not the lib -- ADO -set gdbm.h t_gdbm -eval $inhdr -case "$t_gdbm" in -$define) - : see if gdbm_open exists - set gdbm_open d_gdbm_open - eval $inlibc - case "$d_gdbm_open" in - $undef) - t_gdbm="$undef" - echo "We won't be including " - ;; - esac - ;; -esac -val="$t_gdbm" +$cat >try.c < +void fatal_func(void) { return; }; +int main(void) +{ + GDBM_FILE ret; + + ret = gdbm_open("name", 1, 2, 3, fatal_func); + return ret ? 0 : 1; +} +EOC set i_gdbm -eval $setvar +eval $trylink diff --git a/mcon/U/i_math.U b/mcon/U/i_math.U index c3cd1d5..b2c15af 100644 --- a/mcon/U/i_math.U +++ b/mcon/U/i_math.U @@ -14,7 +14,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:21:59 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:i_math: Inhdr +?MAKE:i_math: Inhdr Trylink cat ?MAKE: -pick add $@ %< ?X: Are there really systems that *DON'T* have math.h? ?S:i_math: @@ -32,3 +32,21 @@ set math.h i_math eval $inhdr +: see whether we need libm +$cat >try.c < +#endif +int main(void) +{ + static double ret; + + ret += 1.2 * pow(1.2, 1.2); + ret += 1.2 * sqrt(ret); + return 0 != ret; +} +EOC +set val '-lm' +eval $trylink + diff --git a/mcon/U/i_ndbm.U b/mcon/U/i_ndbm.U index 8b7eda4..704cbba 100644 --- a/mcon/U/i_ndbm.U +++ b/mcon/U/i_ndbm.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:08:23 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:i_ndbm: Inhdr Inlibc Setvar +?MAKE:i_ndbm: Inhdr Trylink Setvar cat ?MAKE: -pick add $@ %< ?S:i_ndbm (d_ndbm): ?S: This variable conditionally defines the I_NDBM symbol, which @@ -28,26 +28,22 @@ ?C:. ?H:#$i_ndbm I_NDBM /**/ ?H:. -?T:t_ndbm d_dbm_open +?T:d_dbm_open ?LINT:set i_ndbm : see if ndbm.h is available -?X: t_ndbm is a tentative check. We might just have the .h, not the lib -- ADO -set ndbm.h t_ndbm -eval $inhdr -case "$t_ndbm" in -$define) - : see if dbm_open exists - set dbm_open d_dbm_open - eval $inlibc - case "$d_dbm_open" in - $undef) - t_ndbm="$undef" - echo "We won't be including " - ;; - esac - ;; -esac -val="$t_ndbm" +$cat >try.c < +int main(void) +{ + static DBM *dbm; + dbm = dbm_open("file", 1, 2); + return dbm ? 0 : 1; +} +EOC +set d_dbm_open +eval $trylink + +val="$d_dbm_open" set i_ndbm eval $setvar diff --git a/mcon/U/i_string.U b/mcon/U/i_string.U index ce8bdfa..6656bbe 100644 --- a/mcon/U/i_string.U +++ b/mcon/U/i_string.U @@ -50,7 +50,7 @@ else if $test "$strings" && $test -r "$strings"; then echo "Using instead of ." >&4 else - ./warn "No string header found -- You'll surely have problems." + ./warn "No string header found -- You'll surely have problems." 4>&4 fi fi set i_string diff --git a/mcon/U/i_termio.U b/mcon/U/i_termio.U index 1f564ea..2521e02 100644 --- a/mcon/U/i_termio.U +++ b/mcon/U/i_termio.U @@ -25,7 +25,8 @@ ?RCS: Revision 3.0 1993/08/18 12:08:44 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:i_termio i_sgtty i_termios: test Inlibc Cppsym Guess Setvar Findhdr Warn +?MAKE:i_termio i_sgtty i_termios: Trylink Cppsym Guess Setvar Findhdr Warn \ + test cat ?MAKE: -pick add $@ %< ?S:i_termio: ?S: This variable conditionally defines the I_TERMIO symbol, which @@ -69,11 +70,21 @@ val="$undef" val2="$undef" val3="$undef" ?X: Prefer POSIX-approved termios.h over all else -if $test `./findhdr termios.h`; then - set tcsetattr i_termios - eval $inlibc - val3="$i_termios" -fi +$cat >try.c < +int main(void) +{ + static struct termios t; + static int ret; + ret |= tcsetattr(1, 2, &t); + return ret ? 0 : 1; +} +EOC +set i_termios +eval $trylink +set tcsetattr i_termios +val3="$i_termios" + echo " " case "$val3" in "$define") echo "You have POSIX termios.h... good!" >&4;; @@ -84,14 +95,14 @@ case "$val3" in echo " found." >&4 else echo "System is pyramid with BSD universe." - ./warn " not found--you could have problems." + ./warn " not found--you could have problems." 4>&4 fi;; *) if $test `./findhdr termio.h`; then val="$define" echo " found." >&4 else echo "System is pyramid with USG universe." - ./warn " not found--you could have problems." + ./warn " not found--you could have problems." 4>&4 fi;; esac ?X: Start with USG to avoid problems if both usg/bsd was guessed @@ -103,7 +114,7 @@ case "$val3" in echo " found." >&4 val2="$define" else - ./warn "Neither nor found--cross fingers!" + ./warn "Neither nor found--cross fingers!" 4>&4 fi else if $test `./findhdr sgtty.h`; then @@ -113,7 +124,7 @@ case "$val3" in echo " found." >&4 val="$define" else - ./warn "Neither nor found--cross fingers!" + ./warn "Neither nor found--cross fingers!" 4>&4 fi fi;; esac diff --git a/mcon/U/i_varhdr.U b/mcon/U/i_varhdr.U index d7629d4..df6cfe5 100644 --- a/mcon/U/i_varhdr.U +++ b/mcon/U/i_varhdr.U @@ -141,7 +141,7 @@ case "$valstd" in esac case "$val" in '') - ./warn "I could not find the definition for va_dcl... You have problems..." + ./warn "I could not find the definition for va_dcl... You have problems..." 4>&4 val="$undef"; set i_stdarg; eval $setvar val="$undef"; set i_varargs; eval $setvar ;; diff --git a/mcon/U/libpth.U b/mcon/U/libpth.U index d80bb00..dfbf2b8 100644 --- a/mcon/U/libpth.U +++ b/mcon/U/libpth.U @@ -66,8 +66,7 @@ ?INIT:: change the next line if compiling for Xenix/286 on Xenix/386 ?INIT:xlibpth='/usr/lib/386 /lib/386' ?INIT:: Possible local library directories to search. -?INIT:loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib" -?INIT:loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib" +?INIT:loclibpth="" ?INIT: ?INIT:: general looking path for locating libraries ?INIT:glibpth="/lib /usr/lib $xlibpth" diff --git a/mcon/U/mkdep.U b/mcon/U/mkdep.U index 23d1a26..bd54d64 100644 --- a/mcon/U/mkdep.U +++ b/mcon/U/mkdep.U @@ -39,6 +39,8 @@ ?S:. ?F:mkdep ?T:IFS arg flags takeflags srcfile toplev filebase inc dir files file dep c +?T:tmpdir +?LINT:extern TMPDIR : find out how to generate dependencies echo " " echo "Checking how to generate makefile dependencies on your machine..." >&4 @@ -200,7 +202,8 @@ do done set X \$files shift -trap "$rm -f /tmp/mkdep\$\$; exit 1" 1 2 3 15 +tmpdir="${TMPDIR:-/tmp}" +trap "$rm -f "$tmpdir/mkdep\$\$"; exit 1" 1 2 3 15 for srcfile do case "\$srcfile" in @@ -214,7 +217,7 @@ do $sed -n -e 's/#[ ]*include[ ]*//' \\ -e '/<\(.*\)>/ d' \\ -e 's/:[^"]*"\([^"]*\)".*/: \1/' \\ - -e "s/\\.c:/$_o:/p" > /tmp/mkdep\$\$ + -e "s/\\.c:/$_o:/p" > "$tmpdir/mkdep\$\$" ?X: Deal with directories specified via -I requests to locate files IFS=': ' while read file dep; do @@ -225,9 +228,9 @@ do fi done echo "\$file: \$dep" | $sed -e 's,: \./,: ,' - done &4 ;; esac $rm -f pdp11.* pdp11 diff --git a/mcon/U/nblock_io.U b/mcon/U/nblock_io.U index 5c488de..5a5aa04 100644 --- a/mcon/U/nblock_io.U +++ b/mcon/U/nblock_io.U @@ -226,7 +226,7 @@ EOCP esac val="$define" if test "$status" = "$rd_nodata"; then - ./warn "your read() can't distinguish between EOF and no data!" + ./warn "your read() can't distinguish between EOF and no data!" 4>&4 val="$undef" fi else diff --git a/mcon/U/sbrksmart.U b/mcon/U/sbrksmart.U index 9b2bccb..1dc6682 100644 --- a/mcon/U/sbrksmart.U +++ b/mcon/U/sbrksmart.U @@ -37,7 +37,7 @@ echo " " case "$d_sbrk" in "$define") echo "Let's see if your sbrk() is smart enough to release core..." >&4 - $cat > sbrk.c <<'EOC' + $cat > sbrk.c < Date: Sat, 27 Nov 2010 14:04:55 +0000 Subject: Restored initial PATH settings removed by the mega patch. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@35 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Head.U | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/mcon/U/Head.U b/mcon/U/Head.U index aa41021..7667c8a 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -49,7 +49,7 @@ ?MAKE:Head: ?MAKE: -pick wipe $@ %< ?V:PATH p_ _exe me newsh -?T:argv Id OS2_SHELL DJGPP +?T:argv Id p paths OS2_SHELL DJGPP ?T:inksh needksh avoidksh newsh changesh reason ?F:!* ?LINT:extern ENV CDPATH SHELL MACHTYPE @@ -145,6 +145,44 @@ if test -d c:/. ; then fi fi +?X: +?X: There are two schools of thoughts here. Some people correctly argue that +?X: the user has a better chance than we do of setting a reasonable PATH and +?X: others argue that Configure is the best place there is to set up a suitable +?X: PATH. Well, here we try to compromize by keeping the user's PATH and +?X: appending some directories which are known to work on some machine or the +?X: other. The rationale behind this being that a novice user might not have a +?X: proper environment variable set, and some directories like /etc (where +?X: chown is located on some BSD systems) may be missing--RAM. +?X: +?X: SVR4 adds an /opt directory for optional packages. Some sites use +?X: various permutations on /opt as opposed to /usr or /usr/local.-- ADO +?X: +?X: We only add directories that are not already in the PATH of the +?X: user and the directories must exist also. +?X: +: Proper PATH setting +paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin' +paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin" +paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin" +paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin" +paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb" +paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /usr/ccs/bin" +paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib" +paths="$paths /sbin /usr/sbin /usr/libexec" +paths="$paths /system/gnu_library/bin" + +for p in $paths +do + case "$p_$PATH$p_" in + *$p_$p$p_*) ;; + *) test -d $p && PATH=$PATH$p_$p ;; + esac +done + +PATH=.$p_$PATH +export PATH + : shall we be using ksh? inksh='' needksh='' -- cgit v1.2.3 From 2928b772901b1b4808095be63558c53c4d4db45f Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 27 Nov 2010 14:13:04 +0000 Subject: Regenerated Configure. File revision.h is now embedding "$Revision" so it is automatically updated but does not need to be checked-in because SVN won't see a difference worth submitting. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@36 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 57 ++++++++++++++++++++++++++------------------------------ bin/svn-revision | 3 ++- mcon/U/Oldsym.U | 6 +++++- revision.h | 2 +- 4 files changed, 34 insertions(+), 34 deletions(-) diff --git a/Configure b/Configure index cd1dd35..b6ed02b 100755 --- a/Configure +++ b/Configure @@ -16,9 +16,9 @@ # The dist package (which contains metaconfig) is available via SVN: # svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist -# $Id: Head.U 25 2008-05-28 11:19:25Z rmanfredi $ +# $Id: Head.U 35 2010-11-27 14:04:55Z rmanfredi $ # -# Generated on Wed May 28 13:22:26 CEST 2008 [metaconfig 3.5-25] +# Generated on Sat Nov 27 15:09:44 CET 2010 [metaconfig 3.5-34] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-34." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -1373,7 +1372,7 @@ vi zcat " pth=`echo $PATH | sed -e "s/$p_/ /g"` -pth="$pth /lib /usr/lib" +pth="$pth /sbin /usr/sbin /lib /usr/lib /etc" for file in $loclist; do eval xxx=\$$file case "$xxx" in @@ -1381,7 +1380,7 @@ for file in $loclist; do if test -f "$xxx"; then : ok else - ./warn "no $xxx -- ignoring your setting for $file." + ./warn "no $xxx -- ignoring your setting for $file." 4>&4 xxx=`./loc $file $file $pth` fi ;; @@ -1414,7 +1413,7 @@ for file in $trylist; do if test -f "$xxx"; then : ok else - ./warn "no $xxx -- ignoring your setting for $file." + ./warn "no $xxx -- ignoring your setting for $file." 4>&4 xxx=`./loc $file $file $pth` fi ;; @@ -1563,7 +1562,7 @@ EOM [yY]*) cc=gcc; ccname=gcc; ccflags=''; despair=no; $cat *.cbu >checktmp 2>/dev/null if $contains ccflags checktmp >/dev/null; then - ./warn <&4 <&4 $cat >try.c < -int main() { +int main(void) { #ifdef __GNUC__ -#ifdef __VERSION__ - printf("%s\n", __VERSION__); -#else - printf("%s\n", "1"); +gcc_version_major __GNUC__ +#ifdef __GNUC_MINOR__ +gcc_version_minor __GNUC__ +#endif +#ifdef __GNUC_PATCHLEVEL__ +gcc_version_patchlevel __GNUC_PATCHLEVEL__ #endif #endif - exit(0); } EOM -if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then - gccversion=`$run ./try` +if $cc -E try.c > try 2>&1 +then + gccversion=`$grep gcc_version_major try | + sed 's/^.*gcc_version_major[\t ]*//'` case "$gccversion" in '') echo "You are not using GNU cc." ;; *) echo "You are using GNU cc $gccversion." @@ -3357,15 +3358,7 @@ if $cc -o try $ccflags $ldflags try.c >/dev/null 2>&1; then ;; esac else - echo " " - echo "*** WHOA THERE!!! ***" >&4 - echo " Your C compiler \"$cc\" doesn't seem to be working!" >&4 - case "$knowitall" in - '') - echo " You'd better start hunting for one and let me know about it." >&4 - exit 1 - ;; - esac + gccversion='' fi $rm -f try try.* case "$gccversion" in @@ -3713,7 +3706,7 @@ else fi case "$hint" in -default|recommended) dflt="$ccflags $dflt" ;; +default|recommended) dflt="$dflt $ccflags" ;; *) dflt="$ccflags";; esac @@ -4484,6 +4477,7 @@ myhostname='$myhostname' myuname='$myuname' n='$n' nametype='$nametype' +nawk='$nawk' nm='$nm' nroff='$nroff' optimize='$optimize' @@ -4554,7 +4548,8 @@ EOT $test -f $src/patchlevel.h && \ awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh $test -f $src/revision.h && \ -awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/revision.h >>config.sh +sed -ne 's/^#define \([A-Za-z0-9_]*\) ".*: \([0-9]*\).*"/\1=\2/p' \ + < revision.h >>config.sh echo "CONFIG=true" >>config.sh : propagate old symbols diff --git a/bin/svn-revision b/bin/svn-revision index 0d88b3b..2abde75 100755 --- a/bin/svn-revision +++ b/bin/svn-revision @@ -52,8 +52,9 @@ EOF if [ "x$revnum" = x ]; then echo '/* Subversion information not available */' else + XRev='$Revision' cat <>config.sh +?X: In revision.h we expect something like: +?X: #define REVISION "$Revision$" +?X: which is supposed to be expanded by the revision control system. $test -f $src/revision.h && \ -awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/revision.h >>config.sh +sed -ne 's/^#define \([A-Za-z0-9_]*\) ".*: \([0-9]*\).*"/\1=\2/p' \ + < revision.h >>config.sh echo "CONFIG=true" >>config.sh : propagate old symbols diff --git a/revision.h b/revision.h index f03ac35..c686a10 100644 --- a/revision.h +++ b/revision.h @@ -4,4 +4,4 @@ * Generated by ./bin/svn-revision. */ -#define REVISION 33 +#define REVISION "$Revision$" -- cgit v1.2.3 From c957e4322af2c4068ed0e035112dee8e65d82758 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 27 Nov 2010 14:28:11 +0000 Subject: Fixed wrong usage of relative "revision.h" file. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@37 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Oldsym.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/Oldsym.U b/mcon/U/Oldsym.U index e17e799..bcbf744 100644 --- a/mcon/U/Oldsym.U +++ b/mcon/U/Oldsym.U @@ -33,7 +33,7 @@ awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh ?X: which is supposed to be expanded by the revision control system. $test -f $src/revision.h && \ sed -ne 's/^#define \([A-Za-z0-9_]*\) ".*: \([0-9]*\).*"/\1=\2/p' \ - < revision.h >>config.sh + < $src/revision.h >>config.sh echo "CONFIG=true" >>config.sh : propagate old symbols -- cgit v1.2.3 From e285639659541e9f5eea587d32ed00a5b124d3a5 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 27 Nov 2010 14:33:11 +0000 Subject: Use Trylink to see whether __attribute__ is supported. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@38 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_attribut.U | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/mcon/U/d_attribut.U b/mcon/U/d_attribut.U index 8ff5422..aa43a65 100644 --- a/mcon/U/d_attribut.U +++ b/mcon/U/d_attribut.U @@ -20,7 +20,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:08:55 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_attribut: Myread Oldconfig cat cc ccflags rm Setvar contains +?MAKE:d_attribut: Myread Oldconfig Trylink cat ?MAKE: -pick add $@ %< ?S:d_attribut (d_attrib): ?S: This variable conditionally defines HASATTRIBUTE, which @@ -42,23 +42,11 @@ : Look for GNU-cc style attribute checking echo " " echo "Checking whether your compiler can handle __attribute__ ..." >&4 -$cat >attrib.c <<'EOCP' +$cat >try.c <<'EOCP' #include void croak (char* pat,...) __attribute__((format(printf,1,2),noreturn)); +int main(void) { return 0; } EOCP -if $cc $ccflags -c attrib.c >attrib.out 2>&1 ; then - if $contains 'warning' attrib.out >/dev/null 2>&1; then - echo "Your C compiler doesn't fully support __attribute__." - val="$undef" - else - echo "Your C compiler supports __attribute__." - val="$define" - fi -else - echo "Your C compiler doesn't seem to understand __attribute__ at all." - val="$undef" -fi set d_attribut -eval $setvar -$rm -f attrib* +eval $trylink -- cgit v1.2.3 From e7f5b2c1ed3dfe6ff9acbccedfead2e3004c338a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 27 Nov 2010 14:38:15 +0000 Subject: Restored the latest version of this unit, as used by gtk-gnutella. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@39 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/alignbytes.U | 120 +++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 99 insertions(+), 21 deletions(-) diff --git a/mcon/U/alignbytes.U b/mcon/U/alignbytes.U index f31ec80..f27fada 100644 --- a/mcon/U/alignbytes.U +++ b/mcon/U/alignbytes.U @@ -18,11 +18,11 @@ ?RCS: Revision 3.0 1993/08/18 12:05:23 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:alignbytes: Myread cat cc ccflags rm +?MAKE:alignbytes: Myread Trylink cat i_inttypes i_limits i_math ?MAKE: -pick add $@ %< ?S:alignbytes: -?S: This variable holds the number of bytes required to align a -?S: double. Usual values are 2, 4 and 8. +?S: This variable holds the number of bytes required to align an +?S: arbitrary standard type. Usual values are 2, 4 and 8. ?S:. ?X: This used to be called ALIGNBYTES, but that conflicts with ?X: in NetBSD. @@ -32,33 +32,111 @@ ?C:. ?H:#define MEM_ALIGNBYTES $alignbytes /**/ ?H:. -?F:!try +?T:alignment result : check for alignment requirements echo " " case "$alignbytes" in -'') echo "Checking alignment constraints..." >&4 - $cat >try.c <<'EOCP' -struct foobar { - char foo; - double bar; -} try; -int main() +'') + echo "Checking alignment constraints..." >&4 + + for alignment in 8 4 2 1 16 32 error + do + $cat >try.c < +#endif +#$i_limits I_LIMITS +#ifdef I_LIMITS +#include +#endif +#$i_math I_MATH +#ifdef I_MATH +#include +#endif + +union u { + void *void_ptr; + void (*func_ptr)(void); + char c; + short s; + int i; + long l; + float f; + double d; +#ifdef LLONG_MAX + long long ll; +#else +#warning "LLONG_MAX undefined" +#endif +#if defined(HUGE_VALL) + long double ld; +#else +#warning "HUGE_VALL undefined" +#endif +#ifdef UINT32_MAX + uint32_t u32; +#else +#warning "UINT32_MAX undefined" +#endif +#ifdef UINT16_MAX + uint16_t u16; +#else +#warning "UINT32_MAX undefined" +#endif +#ifdef UINT64_MAX + uint64_t u64; +#else +#warning "UINT64_MAX undefined" +#endif +#ifdef UINTMAX_MAX + uintmax_t m; +#else +#warning "UINTMAX_MAX undefined" +#endif +#ifdef UINTPTR_MAX + uintptr_t up; +#else +#warning "UINTPTR_MAX undefined" +#endif +}; + +struct s { + char a; + union u b; +}; + +#define STATIC_ASSERT(expr) \ + do { switch (0) { case ((expr) ? 1 : 0): case 0: break; } } while(0) + +int +main(void) { - printf("%d\n", (char *)&try.bar - (char *)&try.foo); + STATIC_ASSERT($alignment == ((sizeof (struct s) - (sizeof (union u))))); + return 0; } EOCP - if $cc $ccflags try.c -o try >/dev/null 2>&1; then - dflt=`./try` - else - dflt='8' - echo "(I can't seem to compile the test program...)" - fi - ;; + + result='' + set result + eval $trylink + case "$result" in + "$define") break;; + esac + done + + case "$alignment" in + error) dflt='8' + echo "(I can't seem to compile the test program...)" >&4 + ;; + *) dflt=$alignment + ;; + esac +;; *) dflt="$alignbytes" ;; esac -rp="Doubles must be aligned on a how-many-byte boundary?" +rp="What is the maximum alignment in bytes required for a standard type?" . ./myread alignbytes="$ans" -$rm -f try.c try -- cgit v1.2.3 From e1369f5a1a89361f23f54c61a9f3b4384db35c6d Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 27 Nov 2010 20:54:48 +0000 Subject: Added the generic units from gtk-gnutella. Made Trylink verbose to tell them what is tested and what the outcome is. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@40 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 71 +++++++++++++++++++++++++++++++++++ mcon/U/Alpha_mieee.U | 42 +++++++++++++++++++++ mcon/U/GCC_pipe.U | 66 ++++++++++++++++++++++++++++++++ mcon/U/Largefile.U | 74 ++++++++++++++++++++++++++++++++++++ mcon/U/Sendfile64.U | 36 ++++++++++++++++++ mcon/U/Trylink.U | 56 +++++++++++++++++++++++++--- mcon/U/d_access.U | 1 + mcon/U/d_alarm.U | 1 + mcon/U/d_arc4random.U | 40 ++++++++++++++++++++ mcon/U/d_attribut.U | 3 +- mcon/U/d_bcmp.U | 2 +- mcon/U/d_bcopy.U | 1 + mcon/U/d_bindtxtcode.U | 38 +++++++++++++++++++ mcon/U/d_built_popcount.U | 36 ++++++++++++++++++ mcon/U/d_bzero.U | 1 + mcon/U/d_cbrt.U | 1 + mcon/U/d_chown.U | 1 + mcon/U/d_chroot.U | 1 + mcon/U/d_chsize.U | 1 + mcon/U/d_closedir.U | 2 +- mcon/U/d_closefrom.U | 45 ++++++++++++++++++++++ mcon/U/d_crypt.U | 2 +- mcon/U/d_ctermid.U | 1 + mcon/U/d_cuserid.U | 1 + mcon/U/d_deflate.U | 42 +++++++++++++++++++++ mcon/U/d_devpoll.U | 52 ++++++++++++++++++++++++++ mcon/U/d_difftime.U | 1 + mcon/U/d_dirent_d_type.U | 51 +++++++++++++++++++++++++ mcon/U/d_dlerror.U | 1 + mcon/U/d_dlopen.U | 1 + mcon/U/d_drem.U | 1 + mcon/U/d_dup2.U | 1 + mcon/U/d_epoll.U | 51 +++++++++++++++++++++++++ mcon/U/d_fast_assert.U | 85 ++++++++++++++++++++++++++++++++++++++++++ mcon/U/d_fchmod.U | 1 + mcon/U/d_fchown.U | 1 + mcon/U/d_fcntl.U | 1 + mcon/U/d_ffs.U | 1 + mcon/U/d_fgetpos.U | 1 + mcon/U/d_flock.U | 1 + mcon/U/d_fmod.U | 1 + mcon/U/d_fork.U | 1 + mcon/U/d_fsetpos.U | 1 + mcon/U/d_ftime.U | 2 + mcon/U/d_ftrncate.U | 1 + mcon/U/d_getaddrinfo.U | 63 +++++++++++++++++++++++++++++++ mcon/U/d_geteuid.U | 40 ++++++++++++++++++++ mcon/U/d_getgrps.U | 1 + mcon/U/d_gethbynm.U | 1 + mcon/U/d_gethent.U | 1 + mcon/U/d_gethid.U | 1 + mcon/U/d_getifaddrs.U | 54 +++++++++++++++++++++++++++ mcon/U/d_getinvent.U | 37 ++++++++++++++++++ mcon/U/d_getlogin.U | 1 + mcon/U/d_getopt.U | 1 + mcon/U/d_getpagsz.U | 1 + mcon/U/d_getpgid.U | 1 + mcon/U/d_getpgrp.U | 4 +- mcon/U/d_getpgrp2.U | 1 + mcon/U/d_getppid.U | 1 + mcon/U/d_getprior.U | 1 + mcon/U/d_getpwent.U | 1 + mcon/U/d_getuid.U | 40 ++++++++++++++++++++ mcon/U/d_getwd.U | 1 + mcon/U/d_gnugettext.U | 54 +++++++++++++++++++++++++++ mcon/U/d_herror.U | 36 ++++++++++++++++++ mcon/U/d_hstrerror.U | 37 ++++++++++++++++++ mcon/U/d_htonl.U | 3 +- mcon/U/d_iconv.U | 47 +++++++++++++++++++++++ mcon/U/d_inetaton.U | 1 + mcon/U/d_inflate.U | 42 +++++++++++++++++++++ mcon/U/d_initstate.U | 43 +++++++++++++++++++++ mcon/U/d_iptos.U | 73 ++++++++++++++++++++++++++++++++++++ mcon/U/d_ipv6.U | 77 ++++++++++++++++++++++++++++++++++++++ mcon/U/d_isascii.U | 1 + mcon/U/d_itimer.U | 1 + mcon/U/d_kevent_udata.U | 49 ++++++++++++++++++++++++ mcon/U/d_killpg.U | 1 + mcon/U/d_kqueue.U | 57 ++++++++++++++++++++++++++++ mcon/U/d_link.U | 1 + mcon/U/d_locale_charset.U | 39 +++++++++++++++++++ mcon/U/d_locconv.U | 1 + mcon/U/d_lockf.U | 1 + mcon/U/d_lstat.U | 1 + mcon/U/d_madvise.U | 43 +++++++++++++++++++++ mcon/U/d_mblen.U | 1 + mcon/U/d_mbstowcs.U | 1 + mcon/U/d_mbtowc.U | 1 + mcon/U/d_memalign.U | 1 + mcon/U/d_memccpy.U | 1 + mcon/U/d_memchr.U | 1 + mcon/U/d_memcmp.U | 1 + mcon/U/d_memcpy.U | 1 + mcon/U/d_memmove.U | 1 + mcon/U/d_memset.U | 1 + mcon/U/d_mkdir.U | 1 + mcon/U/d_mkfifo.U | 1 + mcon/U/d_mktime.U | 1 + mcon/U/d_mmap.U | 1 + mcon/U/d_msem_lck.U | 1 + mcon/U/d_msg_flags.U | 39 +++++++++++++++++++ mcon/U/d_msgctl.U | 1 + mcon/U/d_msgget.U | 1 + mcon/U/d_msgrcv.U | 1 + mcon/U/d_msgsnd.U | 1 + mcon/U/d_msync.U | 1 + mcon/U/d_munmap.U | 1 + mcon/U/d_nanosleep.U | 38 +++++++++++++++++++ mcon/U/d_nice.U | 1 + mcon/U/d_nls.U | 45 ++++++++++++++++++++++ mcon/U/d_pathconf.U | 1 + mcon/U/d_pause.U | 1 + mcon/U/d_perror.U | 1 + mcon/U/d_pipe.U | 1 + mcon/U/d_poll.U | 1 + mcon/U/d_popen.U | 1 + mcon/U/d_posix_fadvise.U | 47 +++++++++++++++++++++++ mcon/U/d_posix_memalign.U | 41 ++++++++++++++++++++ mcon/U/d_pread.U | 1 + mcon/U/d_preadv.U | 1 + mcon/U/d_psignal.U | 1 + mcon/U/d_pwrite.U | 1 + mcon/U/d_pwritev.U | 1 + mcon/U/d_random.U | 40 ++++++++++++++++++++ mcon/U/d_rdchk.U | 1 + mcon/U/d_readdir.U | 4 ++ mcon/U/d_readlink.U | 1 + mcon/U/d_regparm.U | 48 ++++++++++++++++++++++++ mcon/U/d_rename.U | 1 + mcon/U/d_rmdir.U | 1 + mcon/U/d_rusage.U | 1 + mcon/U/d_sa_interrupt.U | 37 ++++++++++++++++++ mcon/U/d_sbrk.U | 1 + mcon/U/d_scandir.U | 1 + mcon/U/d_select.U | 15 +++++++- mcon/U/d_semctl.U | 1 + mcon/U/d_semget.U | 1 + mcon/U/d_semop.U | 1 + mcon/U/d_sendfile.U | 41 ++++++++++++++++++++ mcon/U/d_setegid.U | 1 + mcon/U/d_seteuid.U | 1 + mcon/U/d_setgrps.U | 1 + mcon/U/d_setlnbuf.U | 1 + mcon/U/d_setlocale.U | 1 + mcon/U/d_setpgid.U | 1 + mcon/U/d_setpgrp.U | 2 + mcon/U/d_setpgrp2.U | 1 + mcon/U/d_setprior.U | 1 + mcon/U/d_setproctitle.U | 45 ++++++++++++++++++++++ mcon/U/d_setregid.U | 2 + mcon/U/d_setreuid.U | 2 + mcon/U/d_setrgid.U | 1 + mcon/U/d_setruid.U | 1 + mcon/U/d_setsid.U | 1 + mcon/U/d_sgndchr.U | 3 +- mcon/U/d_shmat.U | 13 +++++++ mcon/U/d_shmctl.U | 1 + mcon/U/d_shmdt.U | 1 + mcon/U/d_shmget.U | 1 + mcon/U/d_sigaction.U | 1 + mcon/U/d_sigblock.U | 1 + mcon/U/d_sighold.U | 1 + mcon/U/d_siglist.U | 3 +- mcon/U/d_sigsetmk.U | 1 + mcon/U/d_sigvec.U | 3 ++ mcon/U/d_sockaddr_in_sin_len.U | 43 +++++++++++++++++++++ mcon/U/d_socker_get.U | 62 ++++++++++++++++++++++++++++++ mcon/U/d_socket.U | 1 + mcon/U/d_srandom.U | 39 +++++++++++++++++++ mcon/U/d_stat.U | 1 + mcon/U/d_statfs.U | 50 +++++++++++++++++++++++++ mcon/U/d_statvfs.U | 39 +++++++++++++++++++ mcon/U/d_strcasestr.U | 37 ++++++++++++++++++ mcon/U/d_strccmp.U | 1 + mcon/U/d_strchr.U | 2 + mcon/U/d_strcoll.U | 1 + mcon/U/d_strcspn.U | 1 + mcon/U/d_strdup.U | 1 + mcon/U/d_strftime.U | 1 + mcon/U/d_strlcat.U | 38 +++++++++++++++++++ mcon/U/d_strlcpy.U | 38 +++++++++++++++++++ mcon/U/d_strstr.U | 1 + mcon/U/d_strtod.U | 1 + mcon/U/d_strtok.U | 1 + mcon/U/d_strtol.U | 1 + mcon/U/d_strtoul.U | 1 + mcon/U/d_strxfrm.U | 1 + mcon/U/d_symlink.U | 1 + mcon/U/d_syscall.U | 1 + mcon/U/d_sysconf.U | 1 + mcon/U/d_sysctl.U | 41 ++++++++++++++++++++ mcon/U/d_syslog.U | 1 + mcon/U/d_system.U | 1 + mcon/U/d_table.U | 1 + mcon/U/d_tcgtpgrp.U | 1 + mcon/U/d_tcstpgrp.U | 1 + mcon/U/d_truncate.U | 1 + mcon/U/d_tzname.U | 1 + mcon/U/d_ulimit.U | 1 + mcon/U/d_umask.U | 1 + mcon/U/d_usleep.U | 1 + mcon/U/d_vfork.U | 1 + mcon/U/d_vsnprintf.U | 47 +++++++++++++++++++++++ mcon/U/d_wait3.U | 1 + mcon/U/d_wait4.U | 1 + mcon/U/d_waitpid.U | 1 + mcon/U/d_wcstombs.U | 1 + mcon/U/d_wctomb.U | 1 + mcon/U/enablenls.U | 61 ++++++++++++++++++++++++++++++ mcon/U/i_iconv.U | 31 +++++++++++++++ mcon/U/i_ifaddrs.U | 27 ++++++++++++++ mcon/U/i_invent.U | 27 ++++++++++++++ mcon/U/i_langinfo.U | 27 ++++++++++++++ mcon/U/i_libcharset.U | 27 ++++++++++++++ mcon/U/i_libintl.U | 27 ++++++++++++++ mcon/U/i_netdb.U | 27 ++++++++++++++ mcon/U/i_netif.U | 27 ++++++++++++++ mcon/U/i_niip.U | 30 +++++++++++++++ mcon/U/i_sysmount.U | 29 ++++++++++++++ mcon/U/i_syssendfile.U | 27 ++++++++++++++ mcon/U/i_sysstatvfs.U | 29 ++++++++++++++ mcon/U/i_syssysctl.U | 27 ++++++++++++++ mcon/U/i_sysutsname.U | 27 ++++++++++++++ mcon/U/i_sysvfs.U | 29 ++++++++++++++ mcon/U/i_zlib.U | 31 +++++++++++++++ mcon/U/locale.U | 70 ++++++++++++++++++++++++++++++++++ mcon/U/msgmerge_update.U | 29 ++++++++++++++ mcon/U/official.U | 47 +++++++++++++++++++++++ mcon/U/trnl.U | 3 -- 229 files changed, 3316 insertions(+), 20 deletions(-) create mode 100644 mcon/U/Alpha_mieee.U create mode 100644 mcon/U/GCC_pipe.U create mode 100644 mcon/U/Largefile.U create mode 100644 mcon/U/Sendfile64.U create mode 100644 mcon/U/d_arc4random.U create mode 100644 mcon/U/d_bindtxtcode.U create mode 100644 mcon/U/d_built_popcount.U create mode 100644 mcon/U/d_closefrom.U create mode 100644 mcon/U/d_deflate.U create mode 100644 mcon/U/d_devpoll.U create mode 100644 mcon/U/d_dirent_d_type.U create mode 100644 mcon/U/d_epoll.U create mode 100644 mcon/U/d_fast_assert.U create mode 100644 mcon/U/d_getaddrinfo.U create mode 100644 mcon/U/d_geteuid.U create mode 100644 mcon/U/d_getifaddrs.U create mode 100644 mcon/U/d_getinvent.U create mode 100644 mcon/U/d_getuid.U create mode 100644 mcon/U/d_gnugettext.U create mode 100644 mcon/U/d_herror.U create mode 100644 mcon/U/d_hstrerror.U create mode 100644 mcon/U/d_iconv.U create mode 100644 mcon/U/d_inflate.U create mode 100644 mcon/U/d_initstate.U create mode 100644 mcon/U/d_iptos.U create mode 100644 mcon/U/d_ipv6.U create mode 100644 mcon/U/d_kevent_udata.U create mode 100644 mcon/U/d_kqueue.U create mode 100644 mcon/U/d_locale_charset.U create mode 100644 mcon/U/d_madvise.U create mode 100644 mcon/U/d_msg_flags.U create mode 100644 mcon/U/d_nanosleep.U create mode 100644 mcon/U/d_nls.U create mode 100644 mcon/U/d_posix_fadvise.U create mode 100644 mcon/U/d_posix_memalign.U create mode 100644 mcon/U/d_random.U create mode 100644 mcon/U/d_regparm.U create mode 100644 mcon/U/d_sa_interrupt.U create mode 100644 mcon/U/d_sendfile.U create mode 100644 mcon/U/d_setproctitle.U create mode 100644 mcon/U/d_sockaddr_in_sin_len.U create mode 100644 mcon/U/d_socker_get.U create mode 100644 mcon/U/d_srandom.U create mode 100644 mcon/U/d_statfs.U create mode 100644 mcon/U/d_statvfs.U create mode 100644 mcon/U/d_strcasestr.U create mode 100644 mcon/U/d_strlcat.U create mode 100644 mcon/U/d_strlcpy.U create mode 100644 mcon/U/d_sysctl.U create mode 100644 mcon/U/d_vsnprintf.U create mode 100644 mcon/U/enablenls.U create mode 100644 mcon/U/i_iconv.U create mode 100644 mcon/U/i_ifaddrs.U create mode 100644 mcon/U/i_invent.U create mode 100644 mcon/U/i_langinfo.U create mode 100644 mcon/U/i_libcharset.U create mode 100644 mcon/U/i_libintl.U create mode 100644 mcon/U/i_netdb.U create mode 100644 mcon/U/i_netif.U create mode 100644 mcon/U/i_niip.U create mode 100644 mcon/U/i_sysmount.U create mode 100644 mcon/U/i_syssendfile.U create mode 100644 mcon/U/i_sysstatvfs.U create mode 100644 mcon/U/i_syssysctl.U create mode 100644 mcon/U/i_sysutsname.U create mode 100644 mcon/U/i_sysvfs.U create mode 100644 mcon/U/i_zlib.U create mode 100644 mcon/U/locale.U create mode 100644 mcon/U/msgmerge_update.U create mode 100644 mcon/U/official.U diff --git a/MANIFEST b/MANIFEST index 8b72353..9c382eb 100644 --- a/MANIFEST +++ b/MANIFEST @@ -76,6 +76,7 @@ mcon/NOTES Documents the changes in metaconfig mcon/README Instructions on using metaconfig mcon/U/ Holds Units for metaconfig mcon/U/AAAAA.U Does magic before Head.U +mcon/U/Alpha_mieee.U Can -mieee be passed to cc? mcon/U/Begin.U "Beginning of configuration questions" mcon/U/Checkcc.U A unit for checking the C compiler for sanity mcon/U/Chk_MANI.U MANIFEST checks @@ -93,6 +94,7 @@ mcon/U/Extractall.U Support for the -S Configure option mcon/U/Filexp.U Makes program to do tilde expansion mcon/U/Findhdr.U Locate header files mcon/U/Finish.U A unit which always goes last +mcon/U/GCC_pipe.U Is the -pipe option supported by gcc? mcon/U/Getfile.U Get file/directory name mcon/U/Guess.U Hazard guesses as to overall philosophy mcon/U/Head.U First unit, does "#!/bin/sh" et al @@ -100,6 +102,7 @@ mcon/U/Inhdr.U Defines a look-for-header function mcon/U/Init.U Magically gathers ?Init: lines from other units mcon/U/Inlibc.U Defines an is-in-libc? function mcon/U/Instruct.U Prints instructions +mcon/U/Largefile.U Which cc flags are required for large file support? mcon/U/Loc.U Look for common programs mcon/U/Loc_sed.U Full path of sed interpreter, even when portable mcon/U/Magic_h.U Makes confmagic.h--bizarrity here @@ -119,6 +122,7 @@ mcon/U/Options.U Configure option parsing mcon/U/Prefixit.U Fixes path prefix in variables in case it changed mcon/U/Prefixup.U Fixes vars with path prefix using ~name expansion mcon/U/Rcs.U Some stupid redefinitions to keep RCS happy +mcon/U/Sendfile64.U Is sendfile() working with the largefile flags? mcon/U/Setvar.U Set a variable with some sanity checks mcon/U/Signal.U Utilities for sig_name.U mcon/U/Tr.U Builds a tr script to handle lower and upper classes @@ -158,11 +162,14 @@ mcon/U/d_PORTAR.U Do we know about portable archives? mcon/U/d_SHM_MAC.U SHMLBA macro stuff mcon/U/d_access.U Do we have access()? mcon/U/d_alarm.U Do we have alarm()? +mcon/U/d_arc4random.U Do we have arc4random()? mcon/U/d_attribut.U Checks wether your cc groks __attribute__ mcon/U/d_bcmp.U Do we have bcmp() or memcmp()? mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? +mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? +mcon/U/d_built_popcount.U Is __builtin_popcount() available? mcon/U/d_byacc.U Is byacc available? mcon/U/d_bzero.U Do we have bzero() or memset()? mcon/U/d_casti32.U Can the compiler cast large flots to 32-bit ints? @@ -174,6 +181,7 @@ mcon/U/d_chroot.U Do we have chroot()? mcon/U/d_chsize.U Size of a char mcon/U/d_ckeypad.U Do we have the curses keypad()? mcon/U/d_closedir.U Do we have closedir()? +mcon/U/d_closefrom.U Do we have closefrom()? mcon/U/d_const.U Can cc grok the const keyword? mcon/U/d_crypt.U Does crypt() exist? mcon/U/d_csh.U csh path @@ -181,14 +189,19 @@ mcon/U/d_ctermid.U Do we have ctermid()? mcon/U/d_cuserid.U Do we have cuserid()? mcon/U/d_dbl_dig.U Is DBL_DIG defined in or ? mcon/U/d_debugging.U Conditionally defines -DDEBUGGING +mcon/U/d_deflate.U Do we have zlib's deflate()? +mcon/U/d_devpoll.U Can we use /dev/poll? mcon/U/d_difftime.U Do we have difftime()? +mcon/U/d_dirent_d_type.U Does struct dirent has a member d_type? mcon/U/d_dlerror.U Do we have dlerror()? mcon/U/d_dlopen.U Do we have dlopen()? mcon/U/d_dosuid.U Do they want setuid emulation? mcon/U/d_drem.U Do we have drem()? mcon/U/d_dup2.U Do we have dup2()? mcon/U/d_eofpipe.U Will EOF be seen on closed pipes? +mcon/U/d_epoll.U Can we use epoll_xxx() routines? mcon/U/d_euc2jis.U Do we have euc2jis()? +mcon/U/d_fast_assert.U Can we use fast assertions? mcon/U/d_fchmod.U Do we have fchmod()? mcon/U/d_fchown.U Do we have fchown()? mcon/U/d_fcntl.U Do we have fcntl()? @@ -203,11 +216,15 @@ mcon/U/d_fsetpos.U Do we have fsetpos()? mcon/U/d_ftime.U Do we have ftime()? mcon/U/d_ftrncate.U Do we have ftruncate()? mcon/U/d_gconvert.U Do we have gconvert() or gcvt()? +mcon/U/d_getaddrinfo.U Do we have etaddrinfo()? +mcon/U/d_geteuid.U Do we have geteuid()? mcon/U/d_getgrps.U Do we have getgroups()? mcon/U/d_gethbynm.U Do we have gethostbyname()? mcon/U/d_gethent.U Do we have gethostent()? mcon/U/d_gethid.U Do we have gethostid()? mcon/U/d_gethname.U What is the C function to get host name? +mcon/U/d_getifaddrs.U Do we have getifaddrs() and freeifaddrs()? +mcon/U/d_getinvent.U Do we have getinvent()? mcon/U/d_getlogin.U Do we have getlogin()? mcon/U/d_getopt.U Do we have getopt()? mcon/U/d_getpagsz.U Computes system's page size @@ -217,24 +234,38 @@ mcon/U/d_getpgrp2.U Do we have getpgrp2()? (DG/UX) mcon/U/d_getppid.U Do we have getppid()? mcon/U/d_getprior.U Do we have getpriority()? mcon/U/d_getpwent.U How is passwd info gotten? +mcon/U/d_gettext.U Checks whether gettext() is available +mcon/U/d_getuid.U Do we have getuid()? mcon/U/d_getwd.U Do we have getwd()? +mcon/U/d_gnugettext.U Do we have GNU gettext()? mcon/U/d_gnulibc.U Are we using the GNU C library? mcon/U/d_group.U Do we have group()? mcon/U/d_havetlib.U Where is termlib? +mcon/U/d_herror.U Do we have herror()? mcon/U/d_hidnet.U Do hiddennet stuff? +mcon/U/d_hstrerror.U Do we have hstrerror()? mcon/U/d_htonl.U Do we have htonl() and friends? +mcon/U/d_iconv.U Do we have iconv()? mcon/U/d_inetaton.U Do we have inet_aton()? mcon/U/d_inetd.U Should internet communication be done via inetd? +mcon/U/d_inflate.U Do we have zlib's inflate()? +mcon/U/d_initstate.U Do we have initstate()? mcon/U/d_internet.U Use internet addresses? +mcon/U/d_iptos.U Do we have IP TOS support? +mcon/U/d_ipv6.U Do we have IPv6 support? mcon/U/d_isascii.U Do we have isascii()? mcon/U/d_itimer.U Do we have setitimer()? mcon/U/d_keepsig.U Will signal handlers need to be rearmed? +mcon/U/d_kevent_udata.U Is udata within struct kevent an integer? mcon/U/d_killpg.U Do we have killpg()? +mcon/U/d_kqueue.U Do we have kqueue()? mcon/U/d_link.U Do we have link()? mcon/U/d_linuxstd.U Do we have Linux standard I/O structures? +mcon/U/d_locale_charset.U Do we have locale_charset()? mcon/U/d_locconv.U Do we have localeconv()? mcon/U/d_lockf.U Do we have lockf()? mcon/U/d_lstat.U Do we have lstat()? +mcon/U/d_madvise.U Do we have madvise()? mcon/U/d_mblen.U Do we have mblen()? mcon/U/d_mbstowcs.U Do we have mbstowcs()? mcon/U/d_mbtowc.U Do we have mbtowc()? @@ -251,14 +282,17 @@ mcon/U/d_mktime.U Do we have mktime()? mcon/U/d_mmap.U Do we have mmap()? mcon/U/d_msem_lck.U Do we have msem_lock()? mcon/U/d_msg.U Do we have full msg(2) support? +mcon/U/d_msg_flags.U Does struct msghdr have a msg_flags member? mcon/U/d_msgctl.U Do we have msgctl()? mcon/U/d_msgget.U Do we have msgget()? mcon/U/d_msgrcv.U Do we have msgrcv()? mcon/U/d_msgsnd.U Do we have msgsnd()? mcon/U/d_msync.U Do we have msync()? mcon/U/d_munmap.U Do we have munmap()? +mcon/U/d_nanosleep.U Do we have nanosleep()? mcon/U/d_newsadm.U Who is news administrator? mcon/U/d_nice.U Do we have nice()? +mcon/U/d_nls.U Do we support NLS? mcon/U/d_nolnbuf.U Is stdout line buffered? mcon/U/d_normsig.U signal() vs sigset() mcon/U/d_open3.U Do we have the 3 arguments form for open()? @@ -271,19 +305,24 @@ mcon/U/d_pipe.U Do we have pipe()? mcon/U/d_poll.U Do we have poll()? mcon/U/d_popen.U Do we have popen()? mcon/U/d_portable.U How portable do we want to be? +mcon/U/d_posix_fadvise.U Do we have posix_fadvise()? +mcon/U/d_posix_memalign.U Do we have posix_memalign()? mcon/U/d_pread.U Do we have pread()? mcon/U/d_preadv.U Do we have preadv()? mcon/U/d_psignal.U Do we have psignal()? mcon/U/d_pwrite.U Do we have pwrite()? mcon/U/d_pwritev.U Do we have pwritev()? +mcon/U/d_random.U Do we have random()? mcon/U/d_raster.U Is this a Raster Tech machine? mcon/U/d_rdchk.U Is rdchk() there to check for input? mcon/U/d_readdir.U Do we have readdir()? mcon/U/d_readlink.U Do we have readlink()? mcon/U/d_regcmp.U Do we have regcmp()? +mcon/U/d_regparm.U Can we use __attribute__((__regparm__(n)))? mcon/U/d_rename.U Do we have rename()? mcon/U/d_rmdir.U Do we have rmdir()? mcon/U/d_rusage.U Do we have getrusage()? +mcon/U/d_sa_interrupt.U Can SA_INTERRUPT be used in sigaction()? mcon/U/d_safebcpy.U Can bcopy() handle overlapping blocks? mcon/U/d_safemcpy.U Can memcpy() handle overlapping blocks? mcon/U/d_sanemcmp.U Can we compare 8th bit in chars with memcmp()? @@ -296,6 +335,7 @@ mcon/U/d_sem.U Do we have full sem(2) support? mcon/U/d_semctl.U Do we have d_semctl()? mcon/U/d_semget.U Do we have semget()? mcon/U/d_semop.U Do we have semop()? +mcon/U/d_sendfile.U Do we have sendfile()? mcon/U/d_setegid.U Do we have setegid()? mcon/U/d_seteuid.U Do we have seteuid()? mcon/U/d_setgrps.U Do we have setgroups()? @@ -305,6 +345,7 @@ mcon/U/d_setpgid.U Do we have setpgid()? mcon/U/d_setpgrp.U Do we have setpgrp()? mcon/U/d_setpgrp2.U Do we have setpgrp2()? (DG/UX) mcon/U/d_setprior.U Do we have setpriority()? +mcon/U/d_setproctitle.U Do we have setproctitle()? mcon/U/d_setregid.U Do we have setregid()? mcon/U/d_setreuid.U Do we have setreuid()? mcon/U/d_setrgid.U Do we have setrgid()? @@ -324,11 +365,17 @@ mcon/U/d_sigsetjmp.U Do we have sigsetjmp()? mcon/U/d_sigsetmk.U Do we have sigsetmask()? mcon/U/d_sigvec.U BSD reliable signals supported? mcon/U/d_sjis2jis.U Do we have sjis2jis()? +mcon/U/d_sockaddr_in_sin_len.U Is there a sin_len within struct sockaddr_in? +mcon/U/d_socker_get.U Has socker_get() to listen to privileged ports? mcon/U/d_socket.U BSD socket interface supported? mcon/U/d_speedopt.U Optimize speed vs memory? +mcon/U/d_srandom.U Do we have srandom()? mcon/U/d_stat.U Do we have stat()? mcon/U/d_statblks.U Does stat know about blksize and blocks? +mcon/U/d_statfs.U Do we have statfs()? +mcon/U/d_statvfs.U Do we have statvfs()? mcon/U/d_stdstdio.U How standard is stdio? +mcon/U/d_strcasestr.U Do we have strcasestr()? mcon/U/d_strccmp.U Do we have strcasecmp()? mcon/U/d_strchr.U Use strchr() or index()? mcon/U/d_strcoll.U Do we have strcoll()? @@ -337,6 +384,8 @@ mcon/U/d_strctcpy.U Do we do struct copies? mcon/U/d_strdup.U Do we have strdup()? mcon/U/d_strerror.U Do we have strerror()? mcon/U/d_strftime.U Do we have strftime()? +mcon/U/d_strlcat.U Do we have strlcat()? +mcon/U/d_strlcpy.U Do we have strlcpy()? mcon/U/d_strstr.U Do we have strtr()? mcon/U/d_strtod.U Do we have strtod()? mcon/U/d_strtok.U Do we have strtok()? @@ -347,6 +396,7 @@ mcon/U/d_su_chown.U Do we need to be root to do a chown? mcon/U/d_symlink.U Does symlink() exist? mcon/U/d_syscall.U Do we have syscall()? mcon/U/d_sysconf.U Do we have sysconf()? +mcon/U/d_sysctl.U Do we have sysctl()? mcon/U/d_syslog.U Do we have syslog()? mcon/U/d_system.U Do we have system()? mcon/U/d_table.U De we have table()? @@ -367,6 +417,7 @@ mcon/U/d_vfork.U vfork() vs fork() mcon/U/d_voidsig.U How is signal() declared? mcon/U/d_volatile.U Does our C compiler support "volatile"? mcon/U/d_vprintf.U Do we have vprintf()? +mcon/U/d_vsnprintf.U Do we have vsnprintf()? mcon/U/d_wait3.U Do we have wait3()? mcon/U/d_wait4.U Do we have wait4()? mcon/U/d_waitpid.U Do we have waitpid() system call? @@ -377,6 +428,7 @@ mcon/U/d_xdrs.U Do we have XDR serialization routines? mcon/U/defeditor.U Find default editor mcon/U/doublesize.U What is the size of "double"? mcon/U/ebcdic.U Check for an EBCDIC system +mcon/U/enablenls.U Shall we enable NLS? mcon/U/errnolist.U See if we need our own .c to get sys_errnolist[] mcon/U/etc.U Where administrative executable should go mcon/U/filexp.U Finds location of filexp made by Filexp.U @@ -398,15 +450,24 @@ mcon/U/i_fcntl.U Shall we include ? mcon/U/i_float.U Shall we include ? mcon/U/i_gdbm.U Shall we include ? mcon/U/i_grp.U Shall we include ? +mcon/U/i_iconv.U Shall we include ? +mcon/U/i_ifaddrs.U Shall we include ? mcon/U/i_inttypes.U Shall we include ? +mcon/U/i_invent.U Shall we include ? +mcon/U/i_langinfo.U Shall we include ? +mcon/U/i_libcharset.U Shall we include ? +mcon/U/i_libintl.U Shall we include ? mcon/U/i_limits.U Shall we include ? mcon/U/i_locale.U Shall we include ? mcon/U/i_malloc.U Shall we include ? mcon/U/i_math.U Shall we include ? mcon/U/i_memory.U Shall we include ? mcon/U/i_ndbm.U Shall we include ? +mcon/U/i_netdb.U Shall we include ? mcon/U/i_neterrno.U Shall we include ? +mcon/U/i_netif.U Shall we include ? mcon/U/i_niin.U Shall we include ? +mcon/U/i_niip.U Shall we include ? mcon/U/i_poll.U Shall we include ? mcon/U/i_pwd.U Shall we include ? mcon/U/i_regex.U Shall we include ? @@ -418,19 +479,25 @@ mcon/U/i_sysdir.U Shall we include ? mcon/U/i_sysfile.U Do we need ? mcon/U/i_sysioctl.U Include or ? mcon/U/i_sysmman.U Do we have to include ? +mcon/U/i_sysmount.U Shall we include ? mcon/U/i_sysndir.U Shall we include ? mcon/U/i_sysparam.U Shall we include ? mcon/U/i_syspoll.U Shall we include ? mcon/U/i_sysresrc.U Shall we include ? mcon/U/i_sysselct.U Shall we include ? +mcon/U/i_syssendfile.U Shall we include ? mcon/U/i_syssock.U Shall we include ? mcon/U/i_sysstat.U Shall we include +mcon/U/i_sysstatvfs.U Shall we include ? +mcon/U/i_syssysctl.U Shall we include ? mcon/U/i_systable.U De we have to include ? mcon/U/i_systimeb.U Is struct timeb defined in ? mcon/U/i_systimes.U Shall we include ? mcon/U/i_systwgcf.U Shall we include ? mcon/U/i_systypes.U Do we have to include ? mcon/U/i_sysun.U Shall we include ? +mcon/U/i_sysutsname.U Shall we include ? +mcon/U/i_sysvfs.U Shall we include ? mcon/U/i_syswait.U Is there a ? mcon/U/i_termio.U Include or ? mcon/U/i_time.U Which time.h should we include? @@ -440,6 +507,7 @@ mcon/U/i_values.U Shall we include mcon/U/i_varhdr.U Choose between and mcon/U/i_vfork.U Include ? mcon/U/i_whoami.U Include ? +mcon/U/i_zlib.U Shall we include ? mcon/U/inc.U Where to put public include files? mcon/U/install.U Look for a BSD-compatible install mcon/U/intsize.U What is the size of "int"? @@ -458,6 +526,7 @@ mcon/U/libs.U Optional libraries? mcon/U/libyacc.U Locate yacc library mcon/U/lintlib.U Where lint library should be placed mcon/U/lns.U Are symbolic links supported by ln? +mcon/U/locale.U Configuration of I18N files mcon/U/locdist.U Find distribution names for news mcon/U/longsize.U What is the size of "long"? mcon/U/lseektype.U What is the type of lseek()? @@ -474,6 +543,7 @@ mcon/U/mboxchar.U How to determine if file is mailbox mcon/U/mkdep.U How to generate makefile dependencies? mcon/U/models.U Large vs small, split I&D, etc mcon/U/modetype.U What is the type for file modes? +mcon/U/msgmerge_update.U Does msgmerge --update work? mcon/U/myhostname.U How to determine hostname from shell mcon/U/n.U How to suppress newline with echo mcon/U/nametype.U How to get user's fullname @@ -483,6 +553,7 @@ mcon/U/newslib.U Where is the news library? mcon/U/newsspool.U Where is news spooled? mcon/U/nis.U Do we have to deal with NIS (former YP)? mcon/U/nlist_pfx.U nlist() related stuff +mcon/U/official.U Are we making an official build with no local ref? mcon/U/orderlib.U Shall we order components libraries? mcon/U/orgname.U What is the organizaton name? mcon/U/packadmin.U E-mail address of the package administrator diff --git a/mcon/U/Alpha_mieee.U b/mcon/U/Alpha_mieee.U new file mode 100644 index 0000000..31ef1e7 --- /dev/null +++ b/mcon/U/Alpha_mieee.U @@ -0,0 +1,42 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:Alpha_mieee: Trylink cat ccflags gccversion +?MAKE: -pick add $@ %< +?T:flag result saved_ccflags +?LINT:change ccflags +: check whether -mieee should be used +flag='-mieee' +echo " " +case "$gccversion" in +'');; +*) + $cat >try.c <&4 + result='' + set result + eval $trylink + case "$result" in + "$define") ;; + *) ccflags=$saved_ccflags;; + esac + ;; +esac + diff --git a/mcon/U/GCC_pipe.U b/mcon/U/GCC_pipe.U new file mode 100644 index 0000000..0467450 --- /dev/null +++ b/mcon/U/GCC_pipe.U @@ -0,0 +1,66 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:GCC_pipe: Trylink cat +cc ccflags gccversion optimize +?MAKE: -pick add $@ %< +?T:flag result saved_ccflags +?LINT:change ccflags +: check whether -pipe should be used +flag='-pipe' +echo " " +case "$gccversion" in +'');; +*) + case "$ccflags $optimize" in + *-save-temps*);; + *-pipe*);; + *) + $cat >try.c <<'EOC' +int main(void) +{ + return 0; +} +EOC + saved_ccflags=$ccflags + ccflags="$flag $ccflags" + + result='' + cyn="whether '$flag' is accepted by $cc" >&4 + set result + eval $trylink + + case "$result" in + "$define") + $cat >try.c <&4 + ccflags=$saved_ccflags + ;; + esac + ;; + *) ccflags=$saved_ccflags;; + esac + ;; + esac + ;; +esac + diff --git a/mcon/U/Largefile.U b/mcon/U/Largefile.U new file mode 100644 index 0000000..c79d674 --- /dev/null +++ b/mcon/U/Largefile.U @@ -0,0 +1,74 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:Largefile: Trylink cat ccflags i_unistd +?MAKE: -pick add $@ %< +?T:flags result saved_ccflags +?W:%<:off_t +?LINT:change ccflags +: determine how to compile for large 64-bit file support +echo " " +echo "Checking whether we need flags for large file support..." >&4 +flags='-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64' +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + switch (0) { case 0: case (sizeof(off_t) >= 8): break; } + return 0; +} +EOC + +result='' +set result +eval $trylink + +case "$result" in +"$define") + echo "Selected C flags already provide 64-bit file support." + ;; +"$undef") + echo "You're not natively compiling for large file, fixing..." >&4 + + saved_ccflags=$ccflags + ccflags="$flags $ccflags" + + $cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + switch (0) { case 0: case (sizeof(off_t) >= 8): break; } + return 0; +} +EOC + result='' + set result + eval $trylink + + case "$result" in + "$define") + echo "(Adding $flags)" + ;; + "$undef") + echo "(Could not compile the test program, using 32-bit files)" >&4 + ccflags=$saved_ccflags + ;; + esac + ;; +esac + diff --git a/mcon/U/Sendfile64.U b/mcon/U/Sendfile64.U new file mode 100644 index 0000000..726d855 --- /dev/null +++ b/mcon/U/Sendfile64.U @@ -0,0 +1,36 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:Sendfile64: Largefile Trylink d_sendfile i_syssendfile cat +?MAKE: -pick add $@ %< +?T:result +?LINT:change i_syssendfile d_sendfile +: determine whether sendfile works with 64-bit file support +$cat >try.c < +#endif +int main(void) +{ + return 0; +} +EOC +cyn="whether sendfile() works with current compiling flags" +result='' +set result +eval $trylink +case "$result" in +"$undef") + i_syssendfile="$undef" + d_sendfile="$undef" + ;; +esac + diff --git a/mcon/U/Trylink.U b/mcon/U/Trylink.U index 48536b4..cdcf5ef 100644 --- a/mcon/U/Trylink.U +++ b/mcon/U/Trylink.U @@ -17,12 +17,28 @@ ?X: A log of all attempts is kept in the trylink.log file, within the UU ?X: directory (where Configure runs). This directory is only cleaned-up ?X: at the end of the Configure run, so do not supply -e to Configure in order -?X: to stop after the production of the config.sh file. +?X: to stop after the production of the config.sh file and be able to +?X: inspect the UU/trylink.log file. ?X: -?MAKE:Trylink: Setvar Oldconfig cat rm test +cc +ccflags +ldflags +?X: Before calling $trylink, on can also set the $cyn variable (check yes/no) +?X: with a message that will be printed before the test is made and which +?X: will indicate whether the test was successful or not. The string +?X: "Checking $cyn..." is emitted and will be followed by "yes." if the +?X: compilation succeeds, and "no." otherwise. +?X: +?X: If there are no space in the $cyn variable, then it is expected to hold +?X: the name of a routine if the variable to test starts with d_, or +?X: the name of an include file if the variable to test starts with i_. +?X: In which case the message for success are changed to "found." and +?X: "missing." on failure. +?X: +?X: The "$cyn" variable is explicitly reset at the end, and nothing is +?X: printed if it is empty upon entry. +?X: +?MAKE:Trylink: Setvar Oldconfig cat rm test +cc +ccflags +ldflags echo c n ?MAKE: -pick add $@ %< ?LINT:define trylink -?V:trylink +?V:trylink:cyn ?S:trylink: ?S: This shell variable is used internally by Configure to check ?S: wether a given function is defined or not. A typical use is: @@ -32,7 +48,7 @@ ?S: That will print a message, saying wether function was found or ?S: not and set d_func accordingly. ?S:. -?T:var file val nparams +?T:var file val nparams msg yes no : see whether the try.c file compiles and links trylink=' var=$1; @@ -40,7 +56,25 @@ shift; val=$undef; file=trylink.log; nparams=$#; -echo "--- $var ---" >> "$file"; +?X: If they supplied a $cyn, display it now. +case "$cyn" in +"") msg="";; +*" "*) msg="$cyn"; yes=yes; no=no;; +*) + case "$var" in + d_*) msg="for $cyn()"; yes=found; no=missing;; + i_*) msg="for <$cyn>"; yes=found; no=missing;; + *) msg="$cyn"; yes=yes; no=no;; + esac + ;; +esac; +case "$cyn" in +"") echo "--- $var ---" >> "$file";; +*) + echo " "; $echo $n "Checking $msg...$c" >&4; + echo "--- $var --- ($msg)" >>"$file" + ;; +esac; $cat try.c >> "$file"; while :; do if $cc $ccflags -o try try.c $ldflags $1 >> "$file" 2>&1; then @@ -56,6 +90,18 @@ while :; do done; $rm -rf try try.*; echo "==> $var=$val" >> "$file"; +?X: Show feedback if they supplied a $cyn +case "$cyn" in +"") ;; +*) + case "$val" in + "$define") echo " $yes." >&4;; + *) echo " $no." >&4;; + esac + ;; +esac; set $var; eval $setvar; +?X: Cleanup so that next unit using $trylink does not have to do that +cyn="" ' diff --git a/mcon/U/d_access.U b/mcon/U/d_access.U index b83a1ef..503ee2a 100644 --- a/mcon/U/d_access.U +++ b/mcon/U/d_access.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=access set d_access eval $trylink diff --git a/mcon/U/d_alarm.U b/mcon/U/d_alarm.U index 690c004..dc120dc 100644 --- a/mcon/U/d_alarm.U +++ b/mcon/U/d_alarm.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=alarm set d_alarm eval $trylink diff --git a/mcon/U/d_arc4random.U b/mcon/U/d_arc4random.U new file mode 100644 index 0000000..79cb40c --- /dev/null +++ b/mcon/U/d_arc4random.U @@ -0,0 +1,40 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_arc4random: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_arc4random: +?S: This variable conditionally defines the HAS_ARC4RANDOM symbol, which +?S: indicates to the C program that the arc4random() routine is available. +?S:. +?C:HAS_ARC4RANDOM: +?C: This symbol, if defined, indicates that the arc4random routine is +?C: available. +?C:. +?H:#$d_arc4random HAS_ARC4RANDOM /**/ +?H:. +?LINT:set d_arc4random +: see if arc4random exists +$cat >try.c < +#endif +int main(void) +{ + static unsigned long ret; + ret |= arc4random(); + return 0 != ret; +} +EOC +cyn=arc4random +set d_arc4random +eval $trylink + diff --git a/mcon/U/d_attribut.U b/mcon/U/d_attribut.U index aa43a65..35289cb 100644 --- a/mcon/U/d_attribut.U +++ b/mcon/U/d_attribut.U @@ -40,13 +40,12 @@ ?LINT:set d_attribut ?LINT:known __attribute__ : Look for GNU-cc style attribute checking -echo " " -echo "Checking whether your compiler can handle __attribute__ ..." >&4 $cat >try.c <<'EOCP' #include void croak (char* pat,...) __attribute__((format(printf,1,2),noreturn)); int main(void) { return 0; } EOCP +cyn="whether your compiler can handle __attribute__" set d_attribut eval $trylink diff --git a/mcon/U/d_bcmp.U b/mcon/U/d_bcmp.U index 25e9757..99f69ac 100644 --- a/mcon/U/d_bcmp.U +++ b/mcon/U/d_bcmp.U @@ -48,7 +48,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=bcmp set d_bcmp eval $trylink - diff --git a/mcon/U/d_bcopy.U b/mcon/U/d_bcopy.U index bfb85cc..2daad18 100644 --- a/mcon/U/d_bcopy.U +++ b/mcon/U/d_bcopy.U @@ -48,6 +48,7 @@ int main(void) return 0; } EOC +cyn=bcopy set d_bcopy eval $trylink diff --git a/mcon/U/d_bindtxtcode.U b/mcon/U/d_bindtxtcode.U new file mode 100644 index 0000000..df97b25 --- /dev/null +++ b/mcon/U/d_bindtxtcode.U @@ -0,0 +1,38 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_bindtxtcode: Trylink cat +?MAKE: -pick add $@ %< +?S:d_bindtxtcode: +?S: This variable conditionally defines the HAS_BIND_TEXTDOMAIN_CODESET symbol, +?S: which indicates to the C program that the bind_textdomain_codeset() +?S: routine is available. +?S:. +?C:HAS_BIND_TEXTDOMAIN_CODESET: +?C: This symbol, if defined, indicates that the bind_textdomain_codeset routine +?C: is available. +?C:. +?H:#$d_bindtxtcode HAS_BIND_TEXTDOMAIN_CODESET /**/ +?H:. +?LINT:set d_bindtxtcode +: see if bind_textdomain_codeset exists +$cat >try.c < +int main(void) +{ + static char ret; + ret |= *bind_textdomain_codeset("domain", "codeset"); + return ret ? 0 : 1; +} +EOC +cyn=bind_textdomain_codeset +set d_bindtxtcode '-lintl' +eval $trylink + diff --git a/mcon/U/d_built_popcount.U b/mcon/U/d_built_popcount.U new file mode 100644 index 0000000..9bba104 --- /dev/null +++ b/mcon/U/d_built_popcount.U @@ -0,0 +1,36 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_built_popcount: Trylink cat +?MAKE: -pick add $@ %< +?S:d_built_popcount: +?S: This variable conditionally defines the HAS_BUILTIN_POPCOUNT symbol, which +?S: indicates to the C program that __builtin_popcount is available. +?S:. +?C:HAS_BUILTIN_POPCOUNT: +?C: This symbol, if defined, indicates that __builtin_popcount routine is +?C: available to compute the amount of '1' bits in a word. +?C:. +?H:#$d_built_popcount HAS_BUILTIN_POPCOUNT /**/ +?H:. +?LINT:set d_built_popcount +: check for __builtin_popcount +$cat >try.c <try.c < +#include +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static const int fd = 1; + /* + * On Solaris it returns nothing + * On NetBSD it's equivalent to fcntl(fd, F_CLOSEM) + */ + closefrom(fd); + return 0; +} +EOC +cyn=closefrom +set d_closefrom +eval $trylink + diff --git a/mcon/U/d_crypt.U b/mcon/U/d_crypt.U index 0dddaea..165f8ba 100644 --- a/mcon/U/d_crypt.U +++ b/mcon/U/d_crypt.U @@ -36,7 +36,6 @@ ?LINT:set d_crypt ?T:val : see if crypt exists - $cat >try.c <try.c < +int main(void) +{ + static int ret, flush; + static z_stream zs; + flush |= Z_FULL_FLUSH; + flush |= Z_SYNC_FLUSH; + flush |= Z_FINISH; + ret |= deflate(&zs, flush); + return ret ? 0 : 1; +} +EOC +cyn=deflate +set d_deflate '-lz' +eval $trylink + diff --git a/mcon/U/d_devpoll.U b/mcon/U/d_devpoll.U new file mode 100644 index 0000000..568d6ee --- /dev/null +++ b/mcon/U/d_devpoll.U @@ -0,0 +1,52 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_dev_poll: Trylink cat +?MAKE: -pick add $@ %< +?S:d_dev_poll: +?S: This variable conditionally defines the HAS_DEV_POLL symbol, which +?S: indicates to the C program that /dev/poll support is available. +?S:. +?C:HAS_DEV_POLL: +?C: This symbol is defined when /dev/poll can be used. +?C:. +?H:#$d_dev_poll HAS_DEV_POLL +?H:. +?LINT: set d_dev_poll +: can we use /dev/poll? +$cat >try.c < +#include +#include +int main(void) +{ + static struct pollfd pfd; + static struct dvpoll dvp; + static int ret; + pfd.fd |= 1; + pfd.events |= POLLIN; + pfd.events |= POLLPRI; + pfd.events |= POLLOUT; + pfd.events |= POLLHUP; + pfd.events |= POLLERR; + pfd.events |= POLLNVAL; + pfd.events |= POLLREMOVE; + pfd.revents |= 1; + dvp.dp_timeout |= 1; + dvp.dp_nfds |= 1; + dvp.dp_fds = &pfd; + ret |= ioctl(1, DP_POLL, &dvp); + return 0 != ret; +} +EOC +cyn="whether /dev/poll can be used" +set d_dev_poll +eval $trylink + diff --git a/mcon/U/d_difftime.U b/mcon/U/d_difftime.U index d57e465..06aa376 100644 --- a/mcon/U/d_difftime.U +++ b/mcon/U/d_difftime.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=difftime set d_difftime eval $trylink diff --git a/mcon/U/d_dirent_d_type.U b/mcon/U/d_dirent_d_type.U new file mode 100644 index 0000000..2e6b63e --- /dev/null +++ b/mcon/U/d_dirent_d_type.U @@ -0,0 +1,51 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_dirent_d_type: Trylink cat i_dirent +?MAKE: -pick add $@ %< +?S:d_dirent_d_type: +?S: This variable conditionally defines the HAS_DIRENT_D_TYPE symbol, +?S: which indicates to the C program that struct dirent has an +?S: integer member d_type. +?S:. +?C:HAS_DIRENT_D_TYPE: +?C: This symbol, if defined, indicates that struct dirent has an +?C: integer member d_type. +?C:. +?H:#$d_dirent_d_type HAS_DIRENT_D_TYPE /**/ +?H:. +?LINT:set d_dirent_d_type +: check whether struct dirent has a member d_type. +$cat >try.c < +#$i_dirent I_DIRENT +#ifdef I_DIRENT +#include +#endif +int main(void) +{ + static struct dirent dir_entry; + dir_entry.d_type |= 1 + | DT_UNKNOWN + | DT_FIFO + | DT_CHR + | DT_DIR + | DT_BLK + | DT_REG + | DT_LNK + | DT_SOCK + | DT_WHT; + return 0; +} +EOC +cyn="whether struct dirent has a d_type member" +set d_dirent_d_type +eval $trylink + diff --git a/mcon/U/d_dlerror.U b/mcon/U/d_dlerror.U index dc06e61..25d6ca8 100644 --- a/mcon/U/d_dlerror.U +++ b/mcon/U/d_dlerror.U @@ -44,6 +44,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=dlerror set d_dlerror '-ldl' eval $trylink diff --git a/mcon/U/d_dlopen.U b/mcon/U/d_dlopen.U index 5c2a0b0..6ca7ffe 100644 --- a/mcon/U/d_dlopen.U +++ b/mcon/U/d_dlopen.U @@ -43,6 +43,7 @@ int main(void) return p ? 0 : 1; } EOC +cyn=dlopen set d_dlopen '-ldl' eval $trylink diff --git a/mcon/U/d_drem.U b/mcon/U/d_drem.U index 6752ab1..3056ac0 100644 --- a/mcon/U/d_drem.U +++ b/mcon/U/d_drem.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=drem set d_drem '-lm' eval $trylink diff --git a/mcon/U/d_dup2.U b/mcon/U/d_dup2.U index 19e1969..facc3be 100644 --- a/mcon/U/d_dup2.U +++ b/mcon/U/d_dup2.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=dup2 set d_dup2 eval $trylink diff --git a/mcon/U/d_epoll.U b/mcon/U/d_epoll.U new file mode 100644 index 0000000..e38eeb6 --- /dev/null +++ b/mcon/U/d_epoll.U @@ -0,0 +1,51 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_epoll: Trylink cat +?MAKE: -pick add $@ %< +?S:d_epoll: +?S: This variable conditionally defines the HAS_EPOLL symbol, which +?S: indicates to the C program that epoll() support is available. +?S:. +?C:HAS_EPOLL: +?C: This symbol is defined when epoll() can be used. +?C:. +?H:#$d_epoll HAS_EPOLL +?H:. +?LINT: set d_epoll +: can we use epoll? +$cat >try.c < +#include +int main(void) +{ + static struct epoll_event ev; + static int ret, epfd; + epfd |= epoll_create(1); + ev.events |= EPOLLOUT; + ev.events |= EPOLLPRI; + ev.events |= EPOLLERR; + ev.events |= EPOLLHUP; + ev.events |= EPOLLET; + ev.data.ptr = (void *) 0; + ev.data.fd |= 1; + ev.data.u32 |= 1; + ev.data.u64 |= 1; + ret |= epoll_ctl(epfd, 1, EPOLL_CTL_ADD, &ev); + ret |= epoll_ctl(epfd, 1, EPOLL_CTL_MOD, &ev); + ret |= epoll_ctl(epfd, 1, EPOLL_CTL_DEL, &ev); + ret |= epoll_wait(epfd, &ev, 1, -1); + return 0 != ret; +} +EOC +cyn="whether epoll support is available" +set d_epoll +eval $trylink + diff --git a/mcon/U/d_fast_assert.U b/mcon/U/d_fast_assert.U new file mode 100644 index 0000000..3a1e90d --- /dev/null +++ b/mcon/U/d_fast_assert.U @@ -0,0 +1,85 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_fast_assert: Myread Setvar cat gccversion spackage \ + sed +ccflags +cc +ldflags +optimize +?MAKE: -pick add $@ %< +?S:d_fast_assert: +?S: This variable conditionally defines FAST_ASSERTIONS. +?S:. +?C:FAST_ASSERTIONS: +?C: This symbol, when defined, indicates that the program should make +?C: use of its own asserting and failure reporting code, instead of +?C: the one from GLib. +?C:. +?H:#$d_fast_assert FAST_ASSERTIONS /**/ +?H:. +?F:!try.c !try +?LINT:set d_fast_assert +?LINT:change ccflags +: determine whether to enable fast assertions +echo " " +case "$d_fast_assert" in +"$undef") + dflt=n;; +*) + dflt=y;; +esac +$cat <try.c <<'EOC' +int main() +{ + return 0; +} +EOC + if $cc $ccflags -momit-leaf-frame-pointer $ldflags -o try try.c >/dev/null 2>&1 + then + case "$ccflags $optimize" in + *-momit-leaf-frame-pointer*) ;; + *-O0*) ;; + *-O*) + ccflags="-momit-leaf-frame-pointer $ccflags" + echo "Added -momit-leaf-frame-pointer to the cc flags." >&4 + ;; + esac + else + case "$ccflags" in + *-momit-leaf-frame-pointer*) + echo "Stripping -momit-leaf-frame-pointer from cc flags." >&4 + ccflags=`echo $ccflags | $sed 's/ *-momit-leaf-frame-pointer//'` + ;; + esac + fi + ;; + esac +;; +esac + diff --git a/mcon/U/d_fchmod.U b/mcon/U/d_fchmod.U index e175989..cfb3959 100644 --- a/mcon/U/d_fchmod.U +++ b/mcon/U/d_fchmod.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=fchmod set d_fchmod eval $trylink diff --git a/mcon/U/d_fchown.U b/mcon/U/d_fchown.U index fb7f31c..aeb8db3 100644 --- a/mcon/U/d_fchown.U +++ b/mcon/U/d_fchown.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=fchown set d_fchown eval $trylink diff --git a/mcon/U/d_fcntl.U b/mcon/U/d_fcntl.U index 6344500..91ae9bf 100644 --- a/mcon/U/d_fcntl.U +++ b/mcon/U/d_fcntl.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=fcntl set d_fcntl eval $trylink diff --git a/mcon/U/d_ffs.U b/mcon/U/d_ffs.U index b9d0bb1..160af8e 100644 --- a/mcon/U/d_ffs.U +++ b/mcon/U/d_ffs.U @@ -37,6 +37,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=ffs set d_ffs eval $trylink diff --git a/mcon/U/d_fgetpos.U b/mcon/U/d_fgetpos.U index 6d08a75..a11b86e 100644 --- a/mcon/U/d_fgetpos.U +++ b/mcon/U/d_fgetpos.U @@ -36,6 +36,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=fgetpos set d_fgetpos eval $trylink diff --git a/mcon/U/d_flock.U b/mcon/U/d_flock.U index 8bed0a8..5dd9ccd 100644 --- a/mcon/U/d_flock.U +++ b/mcon/U/d_flock.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=flock set d_flock eval $trylink diff --git a/mcon/U/d_fmod.U b/mcon/U/d_fmod.U index ed650ae..c4ef855 100644 --- a/mcon/U/d_fmod.U +++ b/mcon/U/d_fmod.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=fmod set d_fmod '-lm' eval $trylink diff --git a/mcon/U/d_fork.U b/mcon/U/d_fork.U index e29d47a..d428088 100644 --- a/mcon/U/d_fork.U +++ b/mcon/U/d_fork.U @@ -41,6 +41,7 @@ int main(void) return pid ? 0 : 1; } EOC +cyn=fork set d_fork eval $trylink diff --git a/mcon/U/d_fsetpos.U b/mcon/U/d_fsetpos.U index 2d9e09d..f4d5365 100644 --- a/mcon/U/d_fsetpos.U +++ b/mcon/U/d_fsetpos.U @@ -36,6 +36,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=fsetpos set d_fsetpos eval $trylink diff --git a/mcon/U/d_ftime.U b/mcon/U/d_ftime.U index 71cdaf9..f0004a1 100644 --- a/mcon/U/d_ftime.U +++ b/mcon/U/d_ftime.U @@ -69,6 +69,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=gettimeofday set d_gettimeod eval $trylink @@ -86,6 +87,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=ftime set d_ftime eval $trylink diff --git a/mcon/U/d_ftrncate.U b/mcon/U/d_ftrncate.U index 898234c..3c7930a 100644 --- a/mcon/U/d_ftrncate.U +++ b/mcon/U/d_ftrncate.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=ftruncate set d_ftrncate eval $trylink diff --git a/mcon/U/d_getaddrinfo.U b/mcon/U/d_getaddrinfo.U new file mode 100644 index 0000000..3f2f3f2 --- /dev/null +++ b/mcon/U/d_getaddrinfo.U @@ -0,0 +1,63 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getaddrinfo: Trylink cat i_arpainet i_netdb +?MAKE: -pick add $@ %< +?S:d_getaddrinfo: +?S: This variable conditionally defines the HAS_GETADDRINFO symbol, which +?S: indicates to the C program that the getaddrinfo() routine is available. +?S:. +?C:HAS_GETADDRINFO: +?C: This symbol is defined when getaddrinfo() can be used. +?C:. +?H:#$d_getaddrinfo HAS_GETADDRINFO +?H:. +?LINT: set d_getaddrinfo +: can we use getaddrinfo? +$cat >try.c < +#include +#include +#$i_arpainet I_ARPA_INET +#ifdef I_ARPA_INET +#include +#endif +#$i_netdb I_NETDB +#ifdef I_NETDB +#include +#endif +int main(void) +{ + struct addrinfo hints, *res; + int ret; + + hints.ai_flags = 1; + hints.ai_family = PF_UNSPEC; + hints.ai_socktype = 1; + hints.ai_protocol = 1; + hints.ai_addrlen = (socklen_t) 1; + hints.ai_canonname = "canonname"; + hints.ai_addr = (struct sockaddr *) 0; + hints.ai_next = (struct addrinfo *) 0; + ret = getaddrinfo("localhost", "www", &hints, &res); + if (0 != ret) { + const char *s; + s = gai_strerror(ret); + (void) s; + } + if (res) + freeaddrinfo(res); + return 0; +} +EOC +cyn=getaddrinfo +set d_getaddrinfo +eval $trylink + diff --git a/mcon/U/d_geteuid.U b/mcon/U/d_geteuid.U new file mode 100644 index 0000000..2a25129 --- /dev/null +++ b/mcon/U/d_geteuid.U @@ -0,0 +1,40 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_geteuid: Trylink cat i_unistd +?MAKE: -pick add $@ %< +?S:d_geteuid: +?S: This variable conditionally defines the HAS_GETEUID symbol, which +?S: indicates to the C program that geteuid() is available. +?S:. +?C:HAS_GETEUID: +?C: This symbol is defined when geteuid() can be used. +?C:. +?H:#$d_geteuid HAS_GETEUID +?H:. +?LINT: set d_geteuid +: can we use geteuid? +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static uid_t ret; + ret |= geteuid(); + return ret ? 0 : 1; +} +EOC +cyn=geteuid +set d_geteuid +eval $trylink + diff --git a/mcon/U/d_getgrps.U b/mcon/U/d_getgrps.U index a63afd7..f9036e8 100644 --- a/mcon/U/d_getgrps.U +++ b/mcon/U/d_getgrps.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getgroups set d_getgrps eval $trylink diff --git a/mcon/U/d_gethbynm.U b/mcon/U/d_gethbynm.U index 444a826..717102f 100644 --- a/mcon/U/d_gethbynm.U +++ b/mcon/U/d_gethbynm.U @@ -36,6 +36,7 @@ int main(void) return he ? 0 : 1; } EOC +cyn=gethostbyname set d_gethbynm '-lnsl' eval $trylink diff --git a/mcon/U/d_gethent.U b/mcon/U/d_gethent.U index 9305ebd..fd476c6 100644 --- a/mcon/U/d_gethent.U +++ b/mcon/U/d_gethent.U @@ -35,6 +35,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=gethostent set d_gethent eval $trylink diff --git a/mcon/U/d_gethid.U b/mcon/U/d_gethid.U index 293a36f..bfac22c 100644 --- a/mcon/U/d_gethid.U +++ b/mcon/U/d_gethid.U @@ -38,6 +38,7 @@ int main(void) return id ? 0 : 1; } EOC +cyn=gethostid set d_gethid eval $trylink diff --git a/mcon/U/d_getifaddrs.U b/mcon/U/d_getifaddrs.U new file mode 100644 index 0000000..d78a1c4 --- /dev/null +++ b/mcon/U/d_getifaddrs.U @@ -0,0 +1,54 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getifaddrs: Trylink cat i_netif +?MAKE: -pick add $@ %< +?S:d_getifaddrs: +?S: This variable conditionally defines the HAS_GETIFADDRS symbol, which +?S: indicates to the C program that getifaddrs() support is available. +?S:. +?C:HAS_GETIFADDRS: +?C: This symbol is defined when getifaddrs() and freeifaddrs() can be used. +?C:. +?H:#$d_getifaddrs HAS_GETIFADDRS +?H:. +?LINT: set d_getifaddrs +: can we use getifaddrs? +$cat >try.c < +#include +#$i_netif I_NET_IF +#ifdef I_NET_IF +#include +#endif +#include +int main(void) +{ + struct ifaddrs *ifa0, *ifa; + static int ret; + + ret |= getifaddrs(&ifa0); + + for (ifa = ifa0; ifa; ifa = ifa->ifa_next) { + (void) ifa->ifa_flags; + (void) ifa->ifa_addr; + (void) ifa->ifa_addr->sa_family; + (void) ifa->ifa_netmask; + if ((IFF_LOOPBACK | IFF_UP | IFF_RUNNING) & ifa->ifa_flags) + break; + } + freeifaddrs(ifa0); + return 0; +} +EOC +cyn=getifaddrs +set d_getifaddrs +eval $trylink + diff --git a/mcon/U/d_getinvent.U b/mcon/U/d_getinvent.U new file mode 100644 index 0000000..e088bac --- /dev/null +++ b/mcon/U/d_getinvent.U @@ -0,0 +1,37 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getinvent: Trylink cat +?MAKE: -pick add $@ %< +?S:d_getinvent: +?S: This variable conditionally defines the HAS_GETINVENT symbol, which +?S: indicates to the C program that the getinvent() routine is available. +?S:. +?C:HAS_GETINVENT: +?C: This symbol, if defined, indicates that the getinvent() routine is +?C: available. +?C:. +?H:#$d_getinvent HAS_GETINVENT /**/ +?H:. +?LINT:set d_getinvent +: see if getinvent exists +$cat >try.c < +int main(void) +{ + static inventory_t *ret; + ret = getinvent(); + return ret ? 0 : 1; +} +EOC +cyn=getinvent +set d_getinvent +eval $trylink + diff --git a/mcon/U/d_getlogin.U b/mcon/U/d_getlogin.U index 967dd73..d4f07b9 100644 --- a/mcon/U/d_getlogin.U +++ b/mcon/U/d_getlogin.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getlogin set d_getlogin eval $trylink diff --git a/mcon/U/d_getopt.U b/mcon/U/d_getopt.U index 4a5eb59..24dd1f8 100644 --- a/mcon/U/d_getopt.U +++ b/mcon/U/d_getopt.U @@ -40,6 +40,7 @@ int main(int argc, char *argv[]) return ret ? 0 : 1; } EOC +cyn=getopt set d_getopt eval $trylink diff --git a/mcon/U/d_getpagsz.U b/mcon/U/d_getpagsz.U index fcbef76..364a730 100644 --- a/mcon/U/d_getpagsz.U +++ b/mcon/U/d_getpagsz.U @@ -55,6 +55,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getpagesize set d_getpagsz eval $trylink diff --git a/mcon/U/d_getpgid.U b/mcon/U/d_getpgid.U index 79be97a..a3ffdf2 100644 --- a/mcon/U/d_getpgid.U +++ b/mcon/U/d_getpgid.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getpgid set d_getpgid eval $trylink diff --git a/mcon/U/d_getpgrp.U b/mcon/U/d_getpgrp.U index f9fa308..dc3f908 100644 --- a/mcon/U/d_getpgrp.U +++ b/mcon/U/d_getpgrp.U @@ -31,7 +31,7 @@ ?C:. ?C:USE_BSD_GETPGRP: ?C: This symbol, if defined, indicates that getpgrp needs one -?C: arguments whereas USG one needs none. +?C: arguments whereas the USG one needs none. ?C:. ?H:#$d_getpgrp HAS_GETPGRP /**/ ?H:#$d_bsdgetpgrp USE_BSD_GETPGRP /**/ @@ -51,6 +51,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn="whether you have a BSD-like getpgrp()" set d_bsdgetpgrp eval $trylink @@ -74,6 +75,7 @@ int main(void) return ret ? 0 : 1; } EOC + cyn="whether you have a USG-like getpgrp() instead" set d_getpgrp eval $trylink ;; diff --git a/mcon/U/d_getpgrp2.U b/mcon/U/d_getpgrp2.U index 3cbcf74..3a62c97 100644 --- a/mcon/U/d_getpgrp2.U +++ b/mcon/U/d_getpgrp2.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getpgrp2 set d_getpgrp2 eval $trylink diff --git a/mcon/U/d_getppid.U b/mcon/U/d_getppid.U index 98dd2ef..3e8b95a 100644 --- a/mcon/U/d_getppid.U +++ b/mcon/U/d_getppid.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getppid set d_getppid eval $trylink diff --git a/mcon/U/d_getprior.U b/mcon/U/d_getprior.U index f3b0120..b32c255 100644 --- a/mcon/U/d_getprior.U +++ b/mcon/U/d_getprior.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getpriority set d_getprior eval $trylink diff --git a/mcon/U/d_getpwent.U b/mcon/U/d_getpwent.U index 6957c59..8a693a7 100644 --- a/mcon/U/d_getpwent.U +++ b/mcon/U/d_getpwent.U @@ -36,6 +36,7 @@ int main(void) return pw.pw_name ? 0 : 1; } EOC +cyn=getpwent set d_getpwent eval $trylink diff --git a/mcon/U/d_getuid.U b/mcon/U/d_getuid.U new file mode 100644 index 0000000..e3278b3 --- /dev/null +++ b/mcon/U/d_getuid.U @@ -0,0 +1,40 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getuid: Trylink cat i_unistd +?MAKE: -pick add $@ %< +?S:d_getuid: +?S: This variable conditionally defines the HAS_GETUID symbol, which +?S: indicates to the C program that getuid() is available. +?S:. +?C:HAS_GETUID: +?C: This symbol is defined when getuid() can be used. +?C:. +?H:#$d_getuid HAS_GETUID +?H:. +?LINT: set d_getuid +: can we use getuid? +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static uid_t ret; + ret |= getuid(); + return ret ? 0 : 1; +} +EOC +cyn=getuid +set d_getuid +eval $trylink + diff --git a/mcon/U/d_getwd.U b/mcon/U/d_getwd.U index e1101f3..e7a16e8 100644 --- a/mcon/U/d_getwd.U +++ b/mcon/U/d_getwd.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getwd set d_getwd eval $trylink diff --git a/mcon/U/d_gnugettext.U b/mcon/U/d_gnugettext.U new file mode 100644 index 0000000..2ea44d3 --- /dev/null +++ b/mcon/U/d_gnugettext.U @@ -0,0 +1,54 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_gnugettext: Myread Setvar cat d_nls +cc +ccflags +ldflags +libs +?MAKE: -pick add $@ %< +?S:d_gnugettext: +?S: This variable conditionally defines HAS_GNU_GETTEXT +?S:. +?C:HAS_GNU_GETTEXT: +?C: This symbol, if defined, indicates that GNU gettext() is available. +?C:. +?H:#$d_gnugettext HAS_GNU_GETTEXT /**/ +?H:. +?F:!t.c !t +?LINT:set d_gnugettext +?LINT:usefile t t.c +: determine whether we have GNU 'gettext()' +echo " " +case "$d_nls" in +"$define") + echo "Looking for GNU gettext()..." >&4 + $cat >t.c <<'EOC' +#include +extern int _nl_msg_cat_cntr; +extern int *_nl_domain_bindings; +int main() +{ + bindtextdomain ("", ""); + return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_domain_bindings; +} +EOC + if $cc $ccflags $ldflags -o t t.c $libs >/dev/null 2>&1; then + echo "Yes, you have the GNU version." >&4 + val="$define" + else + echo "No, you don't have the GNU version." >&4 + val="$undef" + fi + ;; +*) + echo "You don't have NLS, you can't have GNU gettext()!" >&4 + val="$undef" + ;; +esac +set d_gnugettext +eval $setvar + diff --git a/mcon/U/d_herror.U b/mcon/U/d_herror.U new file mode 100644 index 0000000..1e2c943 --- /dev/null +++ b/mcon/U/d_herror.U @@ -0,0 +1,36 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_herror: Trylink cat +?MAKE: -pick add $@ %< +?S:d_herror: +?S: This variable conditionally defines the HAS_HERROR symbol, which +?S: indicates to the C program that the herror() routine is available. +?S:. +?C:HAS_HERROR: +?C: This symbol, if defined, indicates that the herror routine is +?C: available. +?C:. +?H:#$d_herror HAS_HERROR /**/ +?H:. +?LINT:set d_herror +: see if herror exists +$cat >try.c < +int main(void) +{ + herror("string"); + return 0; +} +EOC +cyn=herror +set d_herror +eval $trylink + diff --git a/mcon/U/d_hstrerror.U b/mcon/U/d_hstrerror.U new file mode 100644 index 0000000..b17e970 --- /dev/null +++ b/mcon/U/d_hstrerror.U @@ -0,0 +1,37 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_hstrerror: Trylink cat +?MAKE: -pick add $@ %< +?S:d_hstrerror: +?S: This variable conditionally defines the HAS_HSTRERROR symbol, which +?S: indicates to the C program that the hstrerror() routine is available. +?S:. +?C:HAS_HSTRERROR: +?C: This symbol, if defined, indicates that the hstrerror routine is +?C: available. +?C:. +?H:#$d_hstrerror HAS_HSTRERROR /**/ +?H:. +?LINT:set d_hstrerror +: see if hstrerror exists +$cat >try.c < +int main(void) +{ + static char ret; + ret |= *hstrerror(1); + return ret ? 0 : 1; +} +EOC +cyn=hstrerror +set d_hstrerror +eval $trylink + diff --git a/mcon/U/d_htonl.U b/mcon/U/d_htonl.U index d832f4c..5f079c3 100644 --- a/mcon/U/d_htonl.U +++ b/mcon/U/d_htonl.U @@ -50,7 +50,7 @@ ?H:#$d_htonl HAS_NTOHS /**/ ?H:. ?LINT:set d_htonl -: see if htonl --and friends-- exists +: see if htonl --and friends-- exist $cat >try.c < #include @@ -74,6 +74,7 @@ int main(int argc, char *argv[]) return ret ? 0 : 1; } EOC +cyn="whether htonl() and friends exist" set d_htonl eval $trylink diff --git a/mcon/U/d_iconv.U b/mcon/U/d_iconv.U new file mode 100644 index 0000000..c7cdf1c --- /dev/null +++ b/mcon/U/d_iconv.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_iconv: Trylink cat i_iconv +?MAKE: -pick add $@ %< +?S:d_iconv: +?S: This variable conditionally defines the HAS_ICONV symbol, which +?S: indicates to the C program that the iconv() routine from iconv is +?S: available. +?S:. +?C:HAS_ICONV: +?C: This symbol, if defined, indicates that the iconv iconv() routine is +?C: available. +?C:. +?H:#$d_iconv HAS_ICONV /**/ +?H:. +?LINT:set d_iconv +: see if iconv exists +$cat >try.c < +#$i_iconv I_ICONV +#ifdef I_ICONV +#include +#endif +int main(void) +{ + static size_t n, srcleft, dstleft; + static char *src, *dst; + static int ret; + iconv_t cd; + cd = iconv_open("ISO8859-1", "UTF-8"); + n |= iconv(cd, (void *) &src, &srcleft, (void *) &dst, &dstleft); + ret |= iconv_close(cd); + return 0 != ret; +} +EOC +cyn=iconv +set d_iconv '-liconv' +eval $trylink + diff --git a/mcon/U/d_inetaton.U b/mcon/U/d_inetaton.U index ad6dc4e..780abef 100644 --- a/mcon/U/d_inetaton.U +++ b/mcon/U/d_inetaton.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=inet_aton set d_inetaton eval $trylink diff --git a/mcon/U/d_inflate.U b/mcon/U/d_inflate.U new file mode 100644 index 0000000..985df4a --- /dev/null +++ b/mcon/U/d_inflate.U @@ -0,0 +1,42 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_inflate: Trylink cat +?MAKE: -pick add $@ %< +?S:d_inflate: +?S: This variable conditionally defines the HAS_INFLATE symbol, which +?S: indicates to the C program that the inflate() routine from zlib is +?S: available. +?S:. +?C:HAS_INFLATE: +?C: This symbol, if defined, indicates that the zlib inflate() routine is +?C: available. +?C:. +?H:#$d_inflate HAS_INFLATE /**/ +?H:. +?LINT:set d_inflate +: see if inflate exists +$cat >try.c < +int main(void) +{ + static int ret, flush; + static z_stream zs; + flush |= Z_SYNC_FLUSH; + flush |= Z_FULL_FLUSH; + flush |= Z_FINISH; + ret |= inflate(&zs, flush); + return ret ? 0 : 1; +} +EOC +cyn=inflate +set d_inflate '-lz' +eval $trylink + diff --git a/mcon/U/d_initstate.U b/mcon/U/d_initstate.U new file mode 100644 index 0000000..0172833 --- /dev/null +++ b/mcon/U/d_initstate.U @@ -0,0 +1,43 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_initstate: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_initstate: +?S: This variable conditionally defines the HAS_INITSTATE symbol, which +?S: indicates to the C program that the initstate() routine is available +?S: to initialize the random() number generator. +?S:. +?C:HAS_INITSTATE: +?C: This symbol, if defined, indicates that the initstate routine is +?C: available to initialize the random() number generator. +?C:. +?H:#$d_initstate HAS_INITSTATE /**/ +?H:. +?LINT:set d_initstate +: see if initstate exists +$cat >try.c < +#endif +int main(void) +{ + static long state[31]; + static size_t size; + static char ret; + ret |= *initstate(1U, (char *) state, size); + return ret ? 0 : 1; +} +EOC +cyn=initstate +set d_initstate +eval $trylink + diff --git a/mcon/U/d_iptos.U b/mcon/U/d_iptos.U new file mode 100644 index 0000000..b7424c1 --- /dev/null +++ b/mcon/U/d_iptos.U @@ -0,0 +1,73 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_iptos: cat rm contains cppstdin cppflags cppminus \ + i_niin i_sysin i_niip test Setvar +?MAKE: -pick add $@ %< +?S:d_iptos: +?S: This variable conditionally defines the USE_IP_TOS symbol, which +?S: indicates to the C program that the IP TOS services are available. +?S:. +?C:USE_IP_TOS: +?C: This symbol, if defined, indicates that the IP TOS services are +?C: available and can be used. Be prepared to include , +?C: either or , and when +?C: I_NETINET_IP is defined. +?C:. +?H:#$d_iptos USE_IP_TOS /**/ +?H:. +?F:!iptos !iptos.h +?T:inh +?LINT:set d_iptos +?LINT:usefile iptos.h +: check for IP TOS support +echo " " +echo "Checking whether IP TOS (Type of Service) support is available..." >&4 +case "$i_niin" in +"$define") inh=netinet/in.h;; +*) + case "$i_sysin" in + "$define") inh=sys/in.h;; + esac + ;; +esac +$cat >iptos < +#include <$inh> +#if defined(IP_TOS) && defined(IPTOS_LOWDELAY) && defined(IPTOS_THROUGHPUT) +YES +#endif +EOM +$cppstdin $cppflags $cppminus iptos.h +val="$undef" +if $contains 'YES' iptos.h >/dev/null 2>&1; then + val="$define" + echo "You have IP TOS support in <$inh>." >&4 +elif $test "x$i_niip" = "x$define"; then + $cat >iptos < + #include <$inh> + #include + #if defined(IP_TOS) && defined(IPTOS_LOWDELAY) && defined(IPTOS_THROUGHPUT) + YES + #endif +EOM + $cppstdin $cppflags $cppminus iptos.h + if $contains 'YES' iptos.h >/dev/null 2>&1; then + val="$define" + echo "You have IP TOS support in ." >&4 + else + echo "Sorry, you seem to be lacking IP TOS support." >&4 + fi +fi +set d_iptos +eval $setvar +$rm -f iptos iptos.h + diff --git a/mcon/U/d_ipv6.U b/mcon/U/d_ipv6.U new file mode 100644 index 0000000..d84f346 --- /dev/null +++ b/mcon/U/d_ipv6.U @@ -0,0 +1,77 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_ipv6: Trylink cat i_arpainet i_netdb +?MAKE: -pick add $@ %< +?S:d_ipv6: +?S: This variable conditionally defines HAS_IPV6. +?S:. +?C:HAS_IPV6: +?C: This symbol is defined when IPv6 can be used +?C:. +?H:#$d_ipv6 HAS_IPV6 /**/ +?H:. +?LINT:set d_ipv6 +: determine whether IPv6 can be used +case "$d_ipv6" in +"$undef") + echo "IPv6 support is disabled." >&4 +;; +*) + $cat >try.c < +#include +#include +#$i_arpainet I_ARPA_INET +#ifdef I_ARPA_INET +#include +#endif +#$i_netdb I_NETDB +#ifdef I_NETDB +#include +#endif +#define STATIC_ASSERT(x) \ + do { switch (0) { case ((x) ? 1 : 0): case 0: break; } } while(0) + +int main(void) +{ + struct sockaddr_storage ss; + struct sockaddr_in6 sin6; + static struct in6_addr in6; + + ss.ss_family = PF_INET6; + + sin6.sin6_family = AF_INET6; + sin6.sin6_port = 6346; + sin6.sin6_flowinfo = 23UL; + sin6.sin6_scope_id = 42UL; + sin6.sin6_addr = in6; + sin6.sin6_addr.s6_addr[0] = in6.s6_addr[0]; + + STATIC_ASSERT(AF_INET6 == PF_INET6); + STATIC_ASSERT(sizeof in6 == sizeof sin6.sin6_addr); + STATIC_ASSERT(16 == sizeof sin6.sin6_addr.s6_addr); + STATIC_ASSERT(2 == sizeof sin6.sin6_port); + STATIC_ASSERT(4 == sizeof sin6.sin6_flowinfo); + STATIC_ASSERT(4 == sizeof sin6.sin6_scope_id); + + (void) sin6; + (void) in6; + + return 0; +} +EOC + + cyn="whether IPv6 support is available" + set d_ipv6 + eval $trylink + ;; +esac + diff --git a/mcon/U/d_isascii.U b/mcon/U/d_isascii.U index 70d7c78..7d50e03 100644 --- a/mcon/U/d_isascii.U +++ b/mcon/U/d_isascii.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=isascii set d_isascii eval $trylink diff --git a/mcon/U/d_itimer.U b/mcon/U/d_itimer.U index 0dc6fa6..024d3a9 100644 --- a/mcon/U/d_itimer.U +++ b/mcon/U/d_itimer.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setitimer set d_itimer eval $trylink diff --git a/mcon/U/d_kevent_udata.U b/mcon/U/d_kevent_udata.U new file mode 100644 index 0000000..922c318 --- /dev/null +++ b/mcon/U/d_kevent_udata.U @@ -0,0 +1,49 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_kevent_int_udata: Trylink cat d_kqueue +?MAKE: -pick add $@ %< +?S:d_kevent_int_udata: +?S: This variable conditionally defines the HAS_KEVENT_INT_UDATA symbol, +?S: which indicates to the C program that struct kevent has an +?S: integer member udata. +?S:. +?C:HAS_KEVENT_INT_UDATA: +?C: This symbol, if defined, indicates that struct kevent has an +?C: integer member udata. +?C:. +?H:#$d_kevent_int_udata HAS_KEVENT_INT_UDATA /**/ +?H:. +?LINT:set d_kevent_int_udata +: check whether udata in struct kevent is an integer +case "$d_kqueue" in +"$define") + $cat >try.c < +#include +#include +int main(void) +{ + static struct kevent ev; + ev.udata |= 1; + return 0; +} +EOC + + cyn="whether member 'udata' of 'struct kevent' is an integer" + set d_kevent_int_udata + eval $trylink + ;; +*) + val="$undef" + set d_kevent_int_udata + eval $setvar +esac + diff --git a/mcon/U/d_killpg.U b/mcon/U/d_killpg.U index 4ed8258..b762b56 100644 --- a/mcon/U/d_killpg.U +++ b/mcon/U/d_killpg.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=killpg set d_killpg eval $trylink diff --git a/mcon/U/d_kqueue.U b/mcon/U/d_kqueue.U new file mode 100644 index 0000000..2ffb960 --- /dev/null +++ b/mcon/U/d_kqueue.U @@ -0,0 +1,57 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_kqueue: Trylink cat +?MAKE: -pick add $@ %< +?S:d_kqueue: +?S: This variable conditionally defines the HAS_KQUEUE symbol, which +?S: indicates to the C program that kqueue() support is available. +?S:. +?C:HAS_KQUEUE: +?C: This symbol is defined when kqueue() can be used. +?C:. +?H:#$d_kqueue HAS_KQUEUE +?H:. +?LINT: set d_kqueue +: can we use kqueue? +$cat >try.c <<'EOC' +#include +#include +#include +int main(void) +{ + static struct kevent changes, events; + static struct timespec ts; + static unsigned long filter; + static int kq, fd; + static unsigned long flags; + filter |= EVFILT_READ; + filter |= EVFILT_WRITE; + filter |= EVFILT_SIGNAL; + filter |= EVFILT_VNODE; + filter |= EVFILT_PROC; + flags |= EV_ADD; + flags |= EV_ENABLE; + flags |= EV_ONESHOT; + flags |= EV_CLEAR; + flags |= EV_EOF; + flags |= EV_ERROR; + flags |= EV_DISABLE; + flags |= EV_DELETE; + EV_SET(&changes, fd, filter, flags, 0, 0, 0); + kq |= kqueue(); + kevent(kq, &changes, 1, &events, 1, &ts); + return 0; +} +EOC +cyn=kqueue +set d_kqueue +eval $trylink + diff --git a/mcon/U/d_link.U b/mcon/U/d_link.U index 8929d83..b3505c2 100644 --- a/mcon/U/d_link.U +++ b/mcon/U/d_link.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=link set d_link eval $trylink diff --git a/mcon/U/d_locale_charset.U b/mcon/U/d_locale_charset.U new file mode 100644 index 0000000..e6e3388 --- /dev/null +++ b/mcon/U/d_locale_charset.U @@ -0,0 +1,39 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_locale_charset: Trylink cat i_libcharset +?MAKE: -pick add $@ %< +?S:d_locale_charset: +?S: This variable conditionally defines the HAS_LOCALE_CHARSET symbol, which +?S: indicates to the C program that locale_charset() support is available. +?S:. +?C:HAS_LOCALE_CHARSET: +?C: This symbol is defined when locale_charset() can be used. +?C:. +?H:#$d_locale_charset HAS_LOCALE_CHARSET +?H:. +?LINT: set d_locale_charset +: can we use locale_charset? +$cat >try.c < +#endif +int main(void) +{ + static char ret; + ret |= *locale_charset(); + return ret ? 0 : 1; +} +EOC +cyn=locale_charset +set d_locale_charset +eval $trylink + diff --git a/mcon/U/d_locconv.U b/mcon/U/d_locconv.U index dacc509..8af5901 100644 --- a/mcon/U/d_locconv.U +++ b/mcon/U/d_locconv.U @@ -40,6 +40,7 @@ int main(void) return lc ? 0 : 1; } EOC +cyn=localeconv set d_locconv eval $trylink diff --git a/mcon/U/d_lockf.U b/mcon/U/d_lockf.U index 3f2953f..6118e6d 100644 --- a/mcon/U/d_lockf.U +++ b/mcon/U/d_lockf.U @@ -45,6 +45,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=lockf set d_lockf eval $trylink diff --git a/mcon/U/d_lstat.U b/mcon/U/d_lstat.U index 8c86364..4454372 100644 --- a/mcon/U/d_lstat.U +++ b/mcon/U/d_lstat.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=lstat set d_lstat eval $trylink diff --git a/mcon/U/d_madvise.U b/mcon/U/d_madvise.U new file mode 100644 index 0000000..5f94a0f --- /dev/null +++ b/mcon/U/d_madvise.U @@ -0,0 +1,43 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_madvise: Trylink cat i_sysmman +?MAKE: -pick add $@ %< +?S:d_madvise: +?S: This variable conditionally defines the HAS_MADVISE symbol, which +?S: indicates to the C program that the madvise() routine is available. +?S:. +?C:HAS_MADVISE: +?C: This symbol, if defined, indicates that the madvise routine is +?C: available. +?C:. +?H:#$d_madvise HAS_MADVISE /**/ +?H:. +?LINT:set d_madvise +: see if madvise exists +$cat >try.c < +#$i_sysmman I_SYS_MMAN +#ifdef I_SYS_MMAN +#include +#endif +int main(void) +{ + static int ret; + static void *p; + size_t len = 1024; + ret |= madvise(p, len, 1); + return ret ? 0 : 1; +} +EOC +cyn=madvise +set d_madvise +eval $trylink + diff --git a/mcon/U/d_mblen.U b/mcon/U/d_mblen.U index 7687410..a4ee390 100644 --- a/mcon/U/d_mblen.U +++ b/mcon/U/d_mblen.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=mblen set d_mblen eval $trylink diff --git a/mcon/U/d_mbstowcs.U b/mcon/U/d_mbstowcs.U index ff5db1b..473d3d0 100644 --- a/mcon/U/d_mbstowcs.U +++ b/mcon/U/d_mbstowcs.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=mbstowcs set d_mbstowcs eval $trylink diff --git a/mcon/U/d_mbtowc.U b/mcon/U/d_mbtowc.U index 3f97919..ea0baee 100644 --- a/mcon/U/d_mbtowc.U +++ b/mcon/U/d_mbtowc.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=mbtowc set d_mbtowc eval $trylink diff --git a/mcon/U/d_memalign.U b/mcon/U/d_memalign.U index 6d98cf2..3adbb69 100644 --- a/mcon/U/d_memalign.U +++ b/mcon/U/d_memalign.U @@ -37,6 +37,7 @@ int main(void) return p ? 0 : 1; } EOC +cyn=memalign set d_memalign eval $trylink diff --git a/mcon/U/d_memccpy.U b/mcon/U/d_memccpy.U index d4c6d02..d35e7fb 100644 --- a/mcon/U/d_memccpy.U +++ b/mcon/U/d_memccpy.U @@ -39,6 +39,7 @@ int main(void) return p ? 0 : 1; } EOC +cyn=memccpy set d_memccpy eval $trylink diff --git a/mcon/U/d_memchr.U b/mcon/U/d_memchr.U index 14d4e4a..8f6f810 100644 --- a/mcon/U/d_memchr.U +++ b/mcon/U/d_memchr.U @@ -38,6 +38,7 @@ int main(void) return p ? 0 : 1; } EOC +cyn=memchr set d_memchr eval $trylink diff --git a/mcon/U/d_memcmp.U b/mcon/U/d_memcmp.U index c1e1652..d90d254 100644 --- a/mcon/U/d_memcmp.U +++ b/mcon/U/d_memcmp.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=memcmp set d_memcmp eval $trylink diff --git a/mcon/U/d_memcpy.U b/mcon/U/d_memcpy.U index 6eb4bec..673f708 100644 --- a/mcon/U/d_memcpy.U +++ b/mcon/U/d_memcpy.U @@ -40,6 +40,7 @@ int main(void) return p ? 0 : 1; } EOC +cyn=memcpy set d_memcpy eval $trylink diff --git a/mcon/U/d_memmove.U b/mcon/U/d_memmove.U index 09b5c6c..6cd758b 100644 --- a/mcon/U/d_memmove.U +++ b/mcon/U/d_memmove.U @@ -39,6 +39,7 @@ int main(void) return p ? 0 : 1; } EOC +cyn=memmove set d_memmove eval $trylink diff --git a/mcon/U/d_memset.U b/mcon/U/d_memset.U index 8744839..ff75895 100644 --- a/mcon/U/d_memset.U +++ b/mcon/U/d_memset.U @@ -41,6 +41,7 @@ int main(void) return p ? 0 : 1; } EOC +cyn=memset set d_memset eval $trylink diff --git a/mcon/U/d_mkdir.U b/mcon/U/d_mkdir.U index 51be290..6035fb3 100644 --- a/mcon/U/d_mkdir.U +++ b/mcon/U/d_mkdir.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=mkdir set d_mkdir eval $trylink diff --git a/mcon/U/d_mkfifo.U b/mcon/U/d_mkfifo.U index 2a57ac0..45eae25 100644 --- a/mcon/U/d_mkfifo.U +++ b/mcon/U/d_mkfifo.U @@ -45,6 +45,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=mkfifo set d_mkfifo eval $trylink diff --git a/mcon/U/d_mktime.U b/mcon/U/d_mktime.U index 5459433..c0fbd55 100644 --- a/mcon/U/d_mktime.U +++ b/mcon/U/d_mktime.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=mktime set d_mktime eval $trylink diff --git a/mcon/U/d_mmap.U b/mcon/U/d_mmap.U index 8d82118..265ed78 100644 --- a/mcon/U/d_mmap.U +++ b/mcon/U/d_mmap.U @@ -47,6 +47,7 @@ int main(void) return p ? 0 : 1; } EOC +cyn=mmap set d_mmap eval $trylink diff --git a/mcon/U/d_msem_lck.U b/mcon/U/d_msem_lck.U index c00768e..3b99f65 100644 --- a/mcon/U/d_msem_lck.U +++ b/mcon/U/d_msem_lck.U @@ -36,6 +36,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=msem_lock set d_msem_lck eval $trylink diff --git a/mcon/U/d_msg_flags.U b/mcon/U/d_msg_flags.U new file mode 100644 index 0000000..299d75f --- /dev/null +++ b/mcon/U/d_msg_flags.U @@ -0,0 +1,39 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_msghdr_msg_flags: Trylink cat +?MAKE: -pick add $@ %< +?S:d_msghdr_msg_flags: +?S: This variable conditionally defines the HAS_MSGHDR_MSG_FLAGS symbol, +?S: which indicates to the C program that struct msghdr has a member +?S: msg_flags. +?S:. +?C:HAS_MSGHDR_MSG_FLAGS: +?C: This symbol, if defined, indicates that struct msghdr has a +?C: member msg_flags. +?C:. +?H:#$d_msghdr_msg_flags HAS_MSGHDR_MSG_FLAGS /**/ +?H:. +?LINT:set d_msghdr_msg_flags +: check for msg_flags in struct msghdr +$cat >try.c < +#include +int main(void) +{ + struct msghdr msg; + msg.msg_flags |= 1; + return 0; +} +EOC +cyn="whether 'struct msghdr' has a 'msg_flags' member" +set d_msghdr_msg_flags +eval $trylink + diff --git a/mcon/U/d_msgctl.U b/mcon/U/d_msgctl.U index ea73d31..c10510e 100644 --- a/mcon/U/d_msgctl.U +++ b/mcon/U/d_msgctl.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=msgctl set d_msgctl eval $trylink diff --git a/mcon/U/d_msgget.U b/mcon/U/d_msgget.U index df5d283..f4071ce 100644 --- a/mcon/U/d_msgget.U +++ b/mcon/U/d_msgget.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=msgget set d_msgget eval $trylink diff --git a/mcon/U/d_msgrcv.U b/mcon/U/d_msgrcv.U index 5d5f134..a53cf23 100644 --- a/mcon/U/d_msgrcv.U +++ b/mcon/U/d_msgrcv.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=msgrcv set d_msgrcv eval $trylink diff --git a/mcon/U/d_msgsnd.U b/mcon/U/d_msgsnd.U index 7fcda37..b644a28 100644 --- a/mcon/U/d_msgsnd.U +++ b/mcon/U/d_msgsnd.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=msgsnd set d_msgsnd eval $trylink diff --git a/mcon/U/d_msync.U b/mcon/U/d_msync.U index 1cb9fc3..4c0fcf1 100644 --- a/mcon/U/d_msync.U +++ b/mcon/U/d_msync.U @@ -43,6 +43,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=msync set d_msync eval $trylink diff --git a/mcon/U/d_munmap.U b/mcon/U/d_munmap.U index 3ce01ec..d82f240 100644 --- a/mcon/U/d_munmap.U +++ b/mcon/U/d_munmap.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=munmap set d_munmap eval $trylink diff --git a/mcon/U/d_nanosleep.U b/mcon/U/d_nanosleep.U new file mode 100644 index 0000000..dc7090f --- /dev/null +++ b/mcon/U/d_nanosleep.U @@ -0,0 +1,38 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_nanosleep: Trylink cat +?MAKE: -pick add $@ %< +?S:d_nanosleep: +?S: This variable conditionally defines the HAS_NANOSLEEP symbol, which +?S: indicates to the C program that the nanosleep() system call is available. +?S:. +?C:HAS_NANOSLEEP: +?C: This symbol, if defined, indicates that the nanosleep() system call +?C: is available. +?C:. +?H:#$d_nanosleep HAS_NANOSLEEP /**/ +?H:. +?LINT:set d_nanosleep +: see if nanosleep exists +$cat >try.c < +int main(void) +{ + static int ret; + static struct timespec request, remain; + ret |= nanosleep(&request, &remain); + return ret ? 0 : 1; +} +EOC +cyn=nanosleep +set d_nanosleep +eval $trylink + diff --git a/mcon/U/d_nice.U b/mcon/U/d_nice.U index 2e92abb..e8e8f8a 100644 --- a/mcon/U/d_nice.U +++ b/mcon/U/d_nice.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=nice set d_nice eval $trylink diff --git a/mcon/U/d_nls.U b/mcon/U/d_nls.U new file mode 100644 index 0000000..5ef2c13 --- /dev/null +++ b/mcon/U/d_nls.U @@ -0,0 +1,45 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_nls: Myread Setvar d_gettext i_libintl +?MAKE: -pick add $@ %< +?S:d_nls: +?S: This variable conditionally defines USE_NLS. +?S:. +?C:USE_NLS: +?C: This symbol, when defined, indicates that Native Language Support +?C: primitives are present and should be enabled. +?C:. +?H:#$d_nls USE_NLS /**/ +?H:. +?LINT:set d_nls +: determine whether we support NLS +echo " " +case "$d_nls" in +"$define") + echo "You have NLS support." >&4 + val="$define" + ;; +*) + case "$d_gettext$i_libintl" in + "$define$define") + echo "You have NLS support." >&4 + val="$define" + ;; + *) + echo "I don't see support for NLS here..." >&4 + val="$undef" + ;; + esac + ;; +esac +set d_nls +eval $setvar + diff --git a/mcon/U/d_pathconf.U b/mcon/U/d_pathconf.U index e1882f4..f9d478f 100644 --- a/mcon/U/d_pathconf.U +++ b/mcon/U/d_pathconf.U @@ -57,6 +57,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=pathconf set d_pathconf eval $trylink diff --git a/mcon/U/d_pause.U b/mcon/U/d_pause.U index 6833480..9dda677 100644 --- a/mcon/U/d_pause.U +++ b/mcon/U/d_pause.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=pause set d_pause eval $trylink diff --git a/mcon/U/d_perror.U b/mcon/U/d_perror.U index b0a45a2..a7acdb9 100644 --- a/mcon/U/d_perror.U +++ b/mcon/U/d_perror.U @@ -47,6 +47,7 @@ int main(void) return 0; } EOC +cyn=perror set d_perror eval $trylink diff --git a/mcon/U/d_pipe.U b/mcon/U/d_pipe.U index 5f0e44e..815fd8f 100644 --- a/mcon/U/d_pipe.U +++ b/mcon/U/d_pipe.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=pipe set d_pipe eval $trylink diff --git a/mcon/U/d_poll.U b/mcon/U/d_poll.U index cc7d659..70b45fd 100644 --- a/mcon/U/d_poll.U +++ b/mcon/U/d_poll.U @@ -58,6 +58,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=poll set d_poll eval $trylink diff --git a/mcon/U/d_popen.U b/mcon/U/d_popen.U index ee294de..5508d73 100644 --- a/mcon/U/d_popen.U +++ b/mcon/U/d_popen.U @@ -36,6 +36,7 @@ int main(void) return f ? 0 : 1; } EOC +cyn=popen set d_popen eval $trylink diff --git a/mcon/U/d_posix_fadvise.U b/mcon/U/d_posix_fadvise.U new file mode 100644 index 0000000..2cc466d --- /dev/null +++ b/mcon/U/d_posix_fadvise.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_posix_fadvise: Trylink cat +?MAKE: -pick add $@ %< +?S:d_posix_fadvise: +?S: This variable conditionally defines the HAS_POSIX_FADVISE symbol, which +?S: indicates to the C program that posix_fadvise() support is available. +?S:. +?C:HAS_POSIX_FADVISE: +?C: This symbol is defined when posix_fadvise() can be used. +?C:. +?H:#$d_posix_fadvise HAS_POSIX_FADVISE +?H:. +?LINT: set d_posix_fadvise +: can we use posix_fadvise? +$cat >try.c <<'EOC' +#include +#include +int main(void) +{ + static int ret, fd; + static off_t offset, size; + static int hint; + + hint = POSIX_FADV_NORMAL + | POSIX_FADV_RANDOM + | POSIX_FADV_SEQUENTIAL + | POSIX_FADV_WILLNEED + | POSIX_FADV_DONTNEED + | POSIX_FADV_NOREUSE; + + ret |= posix_fadvise(fd, offset, size, hint); + return ret ? 0 : 1; +} +EOC +cyn=posix_fadvise +set d_posix_fadvise +eval $trylink + diff --git a/mcon/U/d_posix_memalign.U b/mcon/U/d_posix_memalign.U new file mode 100644 index 0000000..200cc1f --- /dev/null +++ b/mcon/U/d_posix_memalign.U @@ -0,0 +1,41 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_posix_memalign: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_posix_memalign: +?S: This variable conditionally defines the HAS_POSIX_MEMALIGN symbol, which +?S: indicates to the C program that posix_memalign() support is available. +?S:. +?C:HAS_POSIX_MEMALIGN: +?C: This symbol is defined when posix_memalign() can be used. +?C:. +?H:#$d_posix_memalign HAS_POSIX_MEMALIGN +?H:. +?LINT: set d_posix_memalign +: can we use posix_memalign? +$cat >try.c < +#endif +int main(void) +{ + static int ret; + static size_t align, size; + void *p; + ret |= posix_memalign(&p, align, size); + return ret ? 0 : 1; +} +EOC +cyn=posix_memalign +set d_posix_memalign +eval $trylink + diff --git a/mcon/U/d_pread.U b/mcon/U/d_pread.U index ac64dff..e4f5afd 100644 --- a/mcon/U/d_pread.U +++ b/mcon/U/d_pread.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=pread set d_pread eval $trylink diff --git a/mcon/U/d_preadv.U b/mcon/U/d_preadv.U index ecbbbee..a153b26 100644 --- a/mcon/U/d_preadv.U +++ b/mcon/U/d_preadv.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=preadv set d_preadv eval $trylink diff --git a/mcon/U/d_psignal.U b/mcon/U/d_psignal.U index 4536471..46c7b85 100644 --- a/mcon/U/d_psignal.U +++ b/mcon/U/d_psignal.U @@ -35,6 +35,7 @@ int main(void) return 0; } EOC +cyn=psignal set d_psignal eval $trylink diff --git a/mcon/U/d_pwrite.U b/mcon/U/d_pwrite.U index 2012d14..ed00afc 100644 --- a/mcon/U/d_pwrite.U +++ b/mcon/U/d_pwrite.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=pwrite set d_pwrite eval $trylink diff --git a/mcon/U/d_pwritev.U b/mcon/U/d_pwritev.U index 1dfb04d..2031b8a 100644 --- a/mcon/U/d_pwritev.U +++ b/mcon/U/d_pwritev.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=pwritev set d_pwritev eval $trylink diff --git a/mcon/U/d_random.U b/mcon/U/d_random.U new file mode 100644 index 0000000..915b0db --- /dev/null +++ b/mcon/U/d_random.U @@ -0,0 +1,40 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_random: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_random: +?S: This variable conditionally defines the HAS_RANDOM symbol, which +?S: indicates to the C program that the random() routine is available. +?S:. +?C:HAS_RANDOM: +?C: This symbol, if defined, indicates that the random routine is +?C: available. +?C:. +?H:#$d_random HAS_RANDOM /**/ +?H:. +?LINT:set d_random +: see if random exists +$cat >try.c < +#endif +int main(void) +{ + static long ret; + ret |= random(); + return ret ? 0 : 1; +} +EOC +cyn=random +set d_random +eval $trylink + diff --git a/mcon/U/d_rdchk.U b/mcon/U/d_rdchk.U index cc20393..66a00d3 100644 --- a/mcon/U/d_rdchk.U +++ b/mcon/U/d_rdchk.U @@ -36,6 +36,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=rdchk set d_rdchk eval $trylink diff --git a/mcon/U/d_readdir.U b/mcon/U/d_readdir.U index 74e0751..329e039 100644 --- a/mcon/U/d_readdir.U +++ b/mcon/U/d_readdir.U @@ -73,6 +73,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=readdir set d_readdir eval $trylink @@ -90,6 +91,7 @@ int main(void) return 0; } EOC +cyn=seekdir set d_seekdir eval $trylink @end @@ -109,6 +111,7 @@ int main(void) return 0; } EOC +cyn=telldir set d_telldir eval $trylink @end @@ -125,6 +128,7 @@ int main(void) return 0; } EOC +cyn=rewinddir set d_rewinddir eval $trylink @end diff --git a/mcon/U/d_readlink.U b/mcon/U/d_readlink.U index bf16079..bc2d4f9 100644 --- a/mcon/U/d_readlink.U +++ b/mcon/U/d_readlink.U @@ -43,6 +43,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=readlink set d_readlink eval $trylink diff --git a/mcon/U/d_regparm.U b/mcon/U/d_regparm.U new file mode 100644 index 0000000..80b91bd --- /dev/null +++ b/mcon/U/d_regparm.U @@ -0,0 +1,48 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_regparm: Myread Setvar cat rm cc ccflags ldflags gccversion +?MAKE: -pick add $@ %< +?S:d_regparm: +?S: This variable conditionally defines the HAS_REGPARM symbol, which +?S: indicates to the C program that attribute regparm is available. +?S:. +?C:HAS_REGPARM: +?C: This symbol is defined when __attribute__((__regparm__(n))) can be used. +?C:. +?H:#$d_regparm HAS_REGPARM +?H:. +?LINT:set d_regparm +: check whether '__attribute__((__regparm__(n)))' can be used +val="$undef" +if [ "x$gccversion" != x ] +then + $cat >try.c <<'EOC' +static __attribute__((__regparm__(1))) int +blah(int x) +{ + return x / 2; +} +int main(int argc, char *argv[]) +{ + (void) argv; + return blah(argc); +} +EOC + if $cc $ccflags -Werror $ldflags -o try try.c >/dev/null 2>&1 + then + val="$define" + fi + $rm -rf try try.* +fi + +set d_regparm +eval $setvar + diff --git a/mcon/U/d_rename.U b/mcon/U/d_rename.U index 3af3a3f..db5d315 100644 --- a/mcon/U/d_rename.U +++ b/mcon/U/d_rename.U @@ -37,6 +37,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=rename set d_rename eval $trylink diff --git a/mcon/U/d_rmdir.U b/mcon/U/d_rmdir.U index cc77259..31680d8 100644 --- a/mcon/U/d_rmdir.U +++ b/mcon/U/d_rmdir.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=rmdir set d_rmdir eval $trylink diff --git a/mcon/U/d_rusage.U b/mcon/U/d_rusage.U index 6178f7b..0e011b6 100644 --- a/mcon/U/d_rusage.U +++ b/mcon/U/d_rusage.U @@ -47,6 +47,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=getrusage set d_rusage eval $trylink diff --git a/mcon/U/d_sa_interrupt.U b/mcon/U/d_sa_interrupt.U new file mode 100644 index 0000000..ca1c2f4 --- /dev/null +++ b/mcon/U/d_sa_interrupt.U @@ -0,0 +1,37 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sa_interrupt: Trylink cat +?MAKE: -pick add $@ %< +?S:d_sa_interrupt: +?S: This variable conditionally defines the HAS_SA_INTERRUPT symbol, which +?S: indicates to the C program that SA_INTERRUPT() is available for +?S: sigaction(). +?S:. +?C:HAS_SA_INTERRUPT: +?C: This symbol is defined when SA_INTERRUPT can be used in sigaction(). +?C:. +?H:#$d_sa_interrupt HAS_SA_INTERRUPT +?H:. +?LINT: set d_sa_interrupt +: can we use SA_INTERRUPT? +$cat >try.c <<'EOC' +#include +int main(void) +{ + static int ret; + ret |= SA_INTERRUPT; + return ret ? 0 : 1; +} +EOC +cyn="whether SA_INTERRUPT is available in " +set d_sa_interrupt +eval $trylink + diff --git a/mcon/U/d_sbrk.U b/mcon/U/d_sbrk.U index 3f5bb4d..5128f68 100644 --- a/mcon/U/d_sbrk.U +++ b/mcon/U/d_sbrk.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=sbrk set d_sbrk eval $trylink diff --git a/mcon/U/d_scandir.U b/mcon/U/d_scandir.U index 1db2b63..f442703 100644 --- a/mcon/U/d_scandir.U +++ b/mcon/U/d_scandir.U @@ -52,6 +52,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=scandir set d_scandir eval $trylink diff --git a/mcon/U/d_select.U b/mcon/U/d_select.U index ac87539..9a158c0 100644 --- a/mcon/U/d_select.U +++ b/mcon/U/d_select.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:02 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_select: Trylink cat +?MAKE:d_select: Trylink cat i_unistd i_systypes ?MAKE: -pick add $@ %< ?S:d_select: ?S: This variable conditionally defines HAS_SELECT if select() is @@ -29,16 +29,27 @@ ?LINT:set d_select : see if select exists $cat >try.c < +#endif +#ifdef I_UNISTD +#include +#endif +?X: This is the new standard #include int main(void) { static int ret, n; - static struct fd_set r, w, x; + static fd_set r, w, x; static struct timeval timeout; ret |= select(n, &r, &w, &x, &timeout); return ret ? 0 : 1; } EOC +cyn=select set d_select eval $trylink diff --git a/mcon/U/d_semctl.U b/mcon/U/d_semctl.U index d486bca..93de4ca 100644 --- a/mcon/U/d_semctl.U +++ b/mcon/U/d_semctl.U @@ -46,6 +46,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=semctl set d_semctl eval $trylink diff --git a/mcon/U/d_semget.U b/mcon/U/d_semget.U index d2eca77..56b4716 100644 --- a/mcon/U/d_semget.U +++ b/mcon/U/d_semget.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=semget set d_semget eval $trylink diff --git a/mcon/U/d_semop.U b/mcon/U/d_semop.U index e075475..28f3062 100644 --- a/mcon/U/d_semop.U +++ b/mcon/U/d_semop.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=semop set d_semop eval $trylink diff --git a/mcon/U/d_sendfile.U b/mcon/U/d_sendfile.U new file mode 100644 index 0000000..5585457 --- /dev/null +++ b/mcon/U/d_sendfile.U @@ -0,0 +1,41 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sendfile: Trylink cat +?MAKE: -pick add $@ %< +?S:d_sendfile: +?S: This variable conditionally defines the HAS_SENDFILE symbol, which +?S: indicates to the C program that the sendfile() routine is available. +?S:. +?C:HAS_SENDFILE: +?C: This symbol, if defined, indicates that the sendfile routine is +?C: available. +?C:. +?H:#$d_sendfile HAS_SENDFILE /**/ +?H:. +?LINT:set d_sendfile +: see if sendfile exists +$cat >try.c < +#include +int main(void) +{ + static ssize_t ret; + static int out_fd, in_fd; + static off_t offset; + static size_t n; + ret |= sendfile(out_fd, in_fd, &offset, n); + return ret ? 0 : 1; +} +EOC +cyn=sendfile +set d_sendfile '-lsendfile' +eval $trylink + diff --git a/mcon/U/d_setegid.U b/mcon/U/d_setegid.U index 96871fe..80ad14a 100644 --- a/mcon/U/d_setegid.U +++ b/mcon/U/d_setegid.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setegid set d_setegid eval $trylink diff --git a/mcon/U/d_seteuid.U b/mcon/U/d_seteuid.U index a23fd36..7f544ad 100644 --- a/mcon/U/d_seteuid.U +++ b/mcon/U/d_seteuid.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=seteuid set d_seteuid eval $trylink diff --git a/mcon/U/d_setgrps.U b/mcon/U/d_setgrps.U index d50e555..e6c6d55 100644 --- a/mcon/U/d_setgrps.U +++ b/mcon/U/d_setgrps.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setgroups set d_setgrps eval $trylink diff --git a/mcon/U/d_setlnbuf.U b/mcon/U/d_setlnbuf.U index ec4c7e2..fa6298d 100644 --- a/mcon/U/d_setlnbuf.U +++ b/mcon/U/d_setlnbuf.U @@ -39,6 +39,7 @@ int main(void) return 0; } EOC +cyn=setlinebuf set d_setlinebuf eval $trylink diff --git a/mcon/U/d_setlocale.U b/mcon/U/d_setlocale.U index d97e5b7..ebb517c 100644 --- a/mcon/U/d_setlocale.U +++ b/mcon/U/d_setlocale.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setlocale set d_setlocale eval $trylink diff --git a/mcon/U/d_setpgid.U b/mcon/U/d_setpgid.U index 3285d45..2fc1c25 100644 --- a/mcon/U/d_setpgid.U +++ b/mcon/U/d_setpgid.U @@ -46,6 +46,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setpgid set d_setpgid eval $trylink diff --git a/mcon/U/d_setpgrp.U b/mcon/U/d_setpgrp.U index 6c253ed..1a207de 100644 --- a/mcon/U/d_setpgrp.U +++ b/mcon/U/d_setpgrp.U @@ -62,6 +62,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn="whether you have the BSD flavour of setpgrp()" set d_bsdsetpgrp eval $trylink @@ -87,6 +88,7 @@ int main(void) return 0; } EOC + cyn="whether you have the USG flavour of setpgrp() then" set d_setpgrp eval $trylink ;; diff --git a/mcon/U/d_setpgrp2.U b/mcon/U/d_setpgrp2.U index e4517c3..2ed33cc 100644 --- a/mcon/U/d_setpgrp2.U +++ b/mcon/U/d_setpgrp2.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setpgrp2 set d_setpgrp2 eval $trylink diff --git a/mcon/U/d_setprior.U b/mcon/U/d_setprior.U index baeebb1..7f4b8de 100644 --- a/mcon/U/d_setprior.U +++ b/mcon/U/d_setprior.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setpriority set d_setprior eval $trylink diff --git a/mcon/U/d_setproctitle.U b/mcon/U/d_setproctitle.U new file mode 100644 index 0000000..6cb36b6 --- /dev/null +++ b/mcon/U/d_setproctitle.U @@ -0,0 +1,45 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_setproctitle: Trylink cat i_stdlib i_unistd +?MAKE: -pick add $@ %< +?S:d_setproctitle: +?S: This variable conditionally defines the HAS_SETPROCTITLE +?S: symbol, which indicates to the C program that setproctitle() +?S: is available. +?S:. +?C:HAS_SETPROCTITLE: +?C: This symbol is defined when setproctitle() can be used and takes a +?C: format string. +?C:. +?H:#$d_setproctitle HAS_SETPROCTITLE +?H:. +?LINT: set d_setproctitle +: can we use setproctitle? +$cat >try.c < +#$i_stdlib I_STDLIB +#ifdef I_STDLIB +#include +#endif +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + setproctitle("%s %d %s %c", "blah", 1, "x", 'X'); + return 0; +} +EOC +cyn=setproctitle +set d_setproctitle +eval $trylink + diff --git a/mcon/U/d_setregid.U b/mcon/U/d_setregid.U index 6f40026..6dc2259 100644 --- a/mcon/U/d_setregid.U +++ b/mcon/U/d_setregid.U @@ -55,6 +55,7 @@ int main(void) return 0; } EOC +cyn=setregid set d_setregid eval $trylink @@ -71,6 +72,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setresgid set d_setresgid eval $trylink diff --git a/mcon/U/d_setreuid.U b/mcon/U/d_setreuid.U index 73eb87e..8f4ecf6 100644 --- a/mcon/U/d_setreuid.U +++ b/mcon/U/d_setreuid.U @@ -54,6 +54,7 @@ main(void) return ret ? 0 : 1; } EOC +cyn=setreuid set d_setreuid eval $trylink @@ -71,6 +72,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setresuid set d_setresuid eval $trylink diff --git a/mcon/U/d_setrgid.U b/mcon/U/d_setrgid.U index 2b6b358..0a1dc91 100644 --- a/mcon/U/d_setrgid.U +++ b/mcon/U/d_setrgid.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setrgid set d_setrgid eval $trylink diff --git a/mcon/U/d_setruid.U b/mcon/U/d_setruid.U index 3e99822..cd80fef 100644 --- a/mcon/U/d_setruid.U +++ b/mcon/U/d_setruid.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setruid set d_setruid eval $trylink diff --git a/mcon/U/d_setsid.U b/mcon/U/d_setsid.U index 7e50e27..d9bd800 100644 --- a/mcon/U/d_setsid.U +++ b/mcon/U/d_setsid.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=setsid set d_setsid eval $trylink diff --git a/mcon/U/d_sgndchr.U b/mcon/U/d_sgndchr.U index 2f28121..7e61380 100644 --- a/mcon/U/d_sgndchr.U +++ b/mcon/U/d_sgndchr.U @@ -33,8 +33,6 @@ ?H:. ?LINT:set d_sgndchr : check for signed chars -echo " " -echo "Checking to see if your C compiler can do signed chars..." >&4 $cat >try.c <&4 + ;; +esac + case "$d_shmat" in "$define") $cat >try.c <try.c < int main(void) @@ -35,6 +35,7 @@ int main(void) return c ? 0 : 1 } EOC +cyn="whether sys_siglist[] exists" set d_siglist eval $trylink diff --git a/mcon/U/d_sigsetmk.U b/mcon/U/d_sigsetmk.U index f227aae..b924cf2 100644 --- a/mcon/U/d_sigsetmk.U +++ b/mcon/U/d_sigsetmk.U @@ -37,6 +37,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=sigsetmask set d_sigsetmk eval $trylink diff --git a/mcon/U/d_sigvec.U b/mcon/U/d_sigvec.U index d23c298..8679d18 100644 --- a/mcon/U/d_sigvec.U +++ b/mcon/U/d_sigvec.U @@ -62,6 +62,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=sigvector set d_sigvectr eval $trylink @@ -75,6 +76,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=sigvec set d_sigvec eval $trylink @@ -90,6 +92,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=siginterrupt set d_sigintrp eval $trylink diff --git a/mcon/U/d_sockaddr_in_sin_len.U b/mcon/U/d_sockaddr_in_sin_len.U new file mode 100644 index 0000000..443f97e --- /dev/null +++ b/mcon/U/d_sockaddr_in_sin_len.U @@ -0,0 +1,43 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sockaddr_in_sin_len: Trylink cat i_arpainet +?MAKE: -pick add $@ %< +?S:d_sockaddr_in_sin_len: +?S: This variable conditionally defines the HAS_SOCKADDR_IN_SIN_LEN symbol, +?S: indicates to the C program that struct sockaddr_in has a member named +?S: "sin_len". +?S:. +?C:HAS_SOCKADDR_IN_SIN_LEN: +?C: This symbol is defined if struct sockaddr_in has sin_len. +?C:. +?H:#$d_sockaddr_in_sin_len HAS_SOCKADDR_IN_SIN_LEN +?H:. +?LINT: set d_sockaddr_in_sin_len +: does struct sockaddr_in has sin_len +$cat >try.c < +#include +#include +#$i_arpainet I_ARPA_INET +#ifdef I_ARPA_INET +#include +#endif +int main(void) +{ + static struct sockaddr_in addr; + addr.sin_len = 1; + return 0; +} +EOC +cyn="whether 'struct sockaddr_in' has a 'sin_len' member" +set d_sockaddr_in_sin_len +eval $trylink + diff --git a/mcon/U/d_socker_get.U b/mcon/U/d_socker_get.U new file mode 100644 index 0000000..e92b97a --- /dev/null +++ b/mcon/U/d_socker_get.U @@ -0,0 +1,62 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_socker_get sockercflags sockerldflags: Trylink cat ccflags ldflags +?MAKE: -pick add $@ %< +?S:d_socker_get: +?S: This variable conditionally defines the HAS_SOCKER_GET symbol, which +?S: indicates to the C program that socker_get() support is available. +?S:. +?S:sockercflags: +?S: This variable holds the compiler flags required to compile with socker. +?S:. +?S:sockerldflags: +?S: This variable holds the linker flags required to link against socker. +?S:. +?C:HAS_SOCKER_GET: +?C: This symbol is defined when socker_get() can be used to get sockets +?C: bound to privileged ports. +?C:. +?H:#$d_socker_get HAS_SOCKER_GET +?H:. +?T:saved_ccflags saved_ldflags +?LINT:change ccflags ldflags +?LINT:set d_socker_get +: determine whether socker_get is available +case "$d_socker_get" in +"$undef") echo " "; echo "socker support is disabled." >&4;; +*) +$cat >try.c <<'EOC' +#include +#include +int main(void) +{ + static int ret; + ret |= socker_get(1, 2, 3, "", 5); + return ret ? 0 : 1; +} +EOC + +sockercflags=`socker-config --cflags 2>/dev/null` +sockerldflags=`socker-config --libs 2>/dev/null` + +saved_ccflags=$ccflags +saved_ldflags=$ldflags +ccflags="$ccflags $sockercflags" +ldflags="$ldflags $sockerldflags" +cyn="whether socket_get() allows binding to privileged ports" +set d_socker_get +eval $trylink + +ccflags=$saved_ccflags +ldflags=$saved_ldflags +;; +esac + diff --git a/mcon/U/d_socket.U b/mcon/U/d_socket.U index e79cc82..ff7993f 100644 --- a/mcon/U/d_socket.U +++ b/mcon/U/d_socket.U @@ -126,6 +126,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=socketpair set d_sockpair eval $trylink diff --git a/mcon/U/d_srandom.U b/mcon/U/d_srandom.U new file mode 100644 index 0000000..74da567 --- /dev/null +++ b/mcon/U/d_srandom.U @@ -0,0 +1,39 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_srandom: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_srandom: +?S: This variable conditionally defines the HAS_SRANDOM symbol, which +?S: indicates to the C program that the srandom() routine is available. +?S:. +?C:HAS_SRANDOM: +?C: This symbol, if defined, indicates that the srandom routine is +?C: available. +?C:. +?H:#$d_srandom HAS_SRANDOM /**/ +?H:. +?LINT:set d_srandom +: see if srandom exists +$cat >try.c < +#endif +int main(void) +{ + srandom(1UL); + return 0; +} +EOC +cyn=srandom +set d_srandom +eval $trylink + diff --git a/mcon/U/d_stat.U b/mcon/U/d_stat.U index 8c0a9e5..0d04d13 100644 --- a/mcon/U/d_stat.U +++ b/mcon/U/d_stat.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=stat set d_stat eval $trylink diff --git a/mcon/U/d_statfs.U b/mcon/U/d_statfs.U new file mode 100644 index 0000000..5c5b229 --- /dev/null +++ b/mcon/U/d_statfs.U @@ -0,0 +1,50 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_statfs: Trylink cat i_sysmount i_sysparam i_sysvfs +?MAKE: -pick add $@ %< +?S:d_statfs: +?S: This variable conditionally defines the HAS_STATFS symbol, which +?S: indicates to the C program that the statfs() system call is available. +?S:. +?C:HAS_STATFS: +?C: This symbol, if defined, indicates that the Linux statfs() system call +?C: is available to get filesystem statistics. +?C:. +?H:#$d_statfs HAS_STATFS /**/ +?H:. +?LINT:set d_statfs +: see if statfs exists +$cat >try.c < +#endif +#$i_sysmount I_SYS_MOUNT +#ifdef I_SYS_MOUNT +#include +#endif +#$i_sysvfs I_SYS_VFS +#ifdef I_SYS_VFS +#include +#endif +int main(void) +{ + static int ret; + static char *p; + static struct statfs buf; + ret |= statfs(p, &buf); + return ret ? 0 : 1; +} +EOC +cyn=statfs +set d_statfs +eval $trylink + diff --git a/mcon/U/d_statvfs.U b/mcon/U/d_statvfs.U new file mode 100644 index 0000000..e60d83a --- /dev/null +++ b/mcon/U/d_statvfs.U @@ -0,0 +1,39 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_statvfs: Trylink cat +?MAKE: -pick add $@ %< +?S:d_statvfs: +?S: This variable conditionally defines the HAS_STATVFS symbol, which +?S: indicates to the C program that the statvfs() system call is available. +?S:. +?C:HAS_STATVFS: +?C: This symbol, if defined, indicates that the POSIX statvfs() system call +?C: is available to get filesystem statistics. +?C:. +?H:#$d_statvfs HAS_STATVFS /**/ +?H:. +?LINT:set d_statvfs +: see if statvfs exists +$cat >try.c < +int main(void) +{ + static int ret; + static char *p; + static struct statvfs buf; + ret |= statvfs(p, &buf); + return ret ? 0 : 1; +} +EOC +cyn=statvfs +set d_statvfs +eval $trylink + diff --git a/mcon/U/d_strcasestr.U b/mcon/U/d_strcasestr.U new file mode 100644 index 0000000..d8e7a08 --- /dev/null +++ b/mcon/U/d_strcasestr.U @@ -0,0 +1,37 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_strcasestr: Trylink cat +?MAKE: -pick add $@ %< +?S:d_strcasestr: +?S: This variable conditionally defines the HAS_STRCASESTR symbol, which +?S: indicates to the C program that the strcasestr() routine is available. +?S:. +?C:HAS_STRCASESTR: +?C: This symbol, if defined, indicates that the strcasestr routine is +?C: available. +?C:. +?H:#$d_strcasestr HAS_STRCASESTR /**/ +?H:. +?LINT:set d_strcasestr +: see if strcasestr exists +$cat >try.c < +int main(void) +{ + static char ret; + ret |= *strcasestr("big", "little"); + return ret ? 0 : 1; +} +EOC +cyn=strcasestr +set d_strcasestr +eval $trylink + diff --git a/mcon/U/d_strccmp.U b/mcon/U/d_strccmp.U index c914273..1a1d719 100644 --- a/mcon/U/d_strccmp.U +++ b/mcon/U/d_strccmp.U @@ -43,6 +43,7 @@ main(void) return ret ? 0 : 1; } EOC +cyn=strcasecmp set d_strccmp eval $trylink diff --git a/mcon/U/d_strchr.U b/mcon/U/d_strchr.U index f845878..1c0af5a 100644 --- a/mcon/U/d_strchr.U +++ b/mcon/U/d_strchr.U @@ -67,6 +67,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strchr set d_strchr eval $trylink @@ -80,6 +81,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=index set d_index eval $trylink diff --git a/mcon/U/d_strcoll.U b/mcon/U/d_strcoll.U index f5ab7b3..9e1e354 100644 --- a/mcon/U/d_strcoll.U +++ b/mcon/U/d_strcoll.U @@ -37,6 +37,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strcoll set d_strcoll eval $trylink diff --git a/mcon/U/d_strcspn.U b/mcon/U/d_strcspn.U index df4052f..9e61e02 100644 --- a/mcon/U/d_strcspn.U +++ b/mcon/U/d_strcspn.U @@ -36,6 +36,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strcspn set d_strcspn eval $trylink diff --git a/mcon/U/d_strdup.U b/mcon/U/d_strdup.U index e3dcfac..db610b9 100644 --- a/mcon/U/d_strdup.U +++ b/mcon/U/d_strdup.U @@ -37,6 +37,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strdup set d_strdup eval $trylink diff --git a/mcon/U/d_strftime.U b/mcon/U/d_strftime.U index f66044d..86c3686 100644 --- a/mcon/U/d_strftime.U +++ b/mcon/U/d_strftime.U @@ -37,6 +37,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strftime set d_strftime eval $trylink diff --git a/mcon/U/d_strlcat.U b/mcon/U/d_strlcat.U new file mode 100644 index 0000000..557a7d6 --- /dev/null +++ b/mcon/U/d_strlcat.U @@ -0,0 +1,38 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_strlcat: Trylink cat +?MAKE: -pick add $@ %< +?S:d_strlcat: +?S: This variable conditionally defines the HAS_STRLCAT symbol, which +?S: indicates to the C program that the strlcat() routine is available. +?S:. +?C:HAS_STRLCAT: +?C: This symbol, if defined, indicates that the strlcat routine is +?C: available. +?C:. +?H:#$d_strlcat HAS_STRLCAT /**/ +?H:. +?LINT:set d_strlcat +: see if strlcat exists +$cat >try.c < +int main(void) +{ + static size_t ret, size; + static char dst; + ret |= strlcat(&dst, "src", size); + return ret ? 0 : 1; +} +EOC +cyn=strlcat +set d_strlcat +eval $trylink + diff --git a/mcon/U/d_strlcpy.U b/mcon/U/d_strlcpy.U new file mode 100644 index 0000000..51070c7 --- /dev/null +++ b/mcon/U/d_strlcpy.U @@ -0,0 +1,38 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_strlcpy: Trylink cat +?MAKE: -pick add $@ %< +?S:d_strlcpy: +?S: This variable conditionally defines the HAS_STRLCPY symbol, which +?S: indicates to the C program that the strlcpy() routine is available. +?S:. +?C:HAS_STRLCPY: +?C: This symbol, if defined, indicates that the strlcpy routine is +?C: available. +?C:. +?H:#$d_strlcpy HAS_STRLCPY /**/ +?H:. +?LINT:set d_strlcpy +: see if strlcpy exists +$cat >try.c < +int main(void) +{ + static size_t ret, size; + static char dst; + ret |= strlcpy(&dst, "src", size); + return ret ? 0 : 1; +} +EOC +cyn=strlcpy +set d_strlcpy +eval $trylink + diff --git a/mcon/U/d_strstr.U b/mcon/U/d_strstr.U index 6edb716..6005e93 100644 --- a/mcon/U/d_strstr.U +++ b/mcon/U/d_strstr.U @@ -35,6 +35,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strstr set d_strstr eval $trylink diff --git a/mcon/U/d_strtod.U b/mcon/U/d_strtod.U index 9efb603..64a5ef2 100644 --- a/mcon/U/d_strtod.U +++ b/mcon/U/d_strtod.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strtod set d_strtod eval $trylink diff --git a/mcon/U/d_strtok.U b/mcon/U/d_strtok.U index f5a01bc..9634338 100644 --- a/mcon/U/d_strtok.U +++ b/mcon/U/d_strtok.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strtok set d_strtok eval $trylink diff --git a/mcon/U/d_strtol.U b/mcon/U/d_strtol.U index 032bfe7..edc1153 100644 --- a/mcon/U/d_strtol.U +++ b/mcon/U/d_strtol.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strtol set d_strtol eval $trylink diff --git a/mcon/U/d_strtoul.U b/mcon/U/d_strtoul.U index abc000e..ab7b4ff 100644 --- a/mcon/U/d_strtoul.U +++ b/mcon/U/d_strtoul.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strtoul set d_strtoul eval $trylink diff --git a/mcon/U/d_strxfrm.U b/mcon/U/d_strxfrm.U index c696e20..2c9dcc6 100644 --- a/mcon/U/d_strxfrm.U +++ b/mcon/U/d_strxfrm.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=strxfrm set d_strxfrm eval $trylink diff --git a/mcon/U/d_symlink.U b/mcon/U/d_symlink.U index 0d476a3..634c556 100644 --- a/mcon/U/d_symlink.U +++ b/mcon/U/d_symlink.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=symlink set d_symlink eval $trylink diff --git a/mcon/U/d_syscall.U b/mcon/U/d_syscall.U index 96e9d27..36a6dc7 100644 --- a/mcon/U/d_syscall.U +++ b/mcon/U/d_syscall.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=syscall set d_syscall eval $trylink diff --git a/mcon/U/d_sysconf.U b/mcon/U/d_sysconf.U index 3678592..0d919ed 100644 --- a/mcon/U/d_sysconf.U +++ b/mcon/U/d_sysconf.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=sysconf set d_sysconf eval $trylink diff --git a/mcon/U/d_sysctl.U b/mcon/U/d_sysctl.U new file mode 100644 index 0000000..bf5fc0d --- /dev/null +++ b/mcon/U/d_sysctl.U @@ -0,0 +1,41 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sysctl: Trylink cat +?MAKE: -pick add $@ %< +?S:d_sysctl: +?S: This variable conditionally defines the HAS_SYSCTL symbol, which +?S: indicates to the C program that the sysctl() routine is available. +?S:. +?C:HAS_SYSCTL: +?C: This symbol, if defined, indicates that the sysctl routine is +?C: available. +?C:. +?H:#$d_sysctl HAS_SYSCTL /**/ +?H:. +?LINT:set d_sysctl +: see if sysctl exists +$cat >try.c < +#include +int main(void) +{ + static int ret, name; + static unsigned int namelen; + static void *oldp, *newp; + static size_t oldlen, newlen; + ret |= sysctl(&name, namelen, oldp, &oldlen, newp, newlen); + return ret ? 0 : 1; +} +EOC +cyn=sysctl +set d_sysctl +eval $trylink + diff --git a/mcon/U/d_syslog.U b/mcon/U/d_syslog.U index ca80d27..04f296e 100644 --- a/mcon/U/d_syslog.U +++ b/mcon/U/d_syslog.U @@ -39,6 +39,7 @@ int main(void) return 0; } EOC +cyn=syslog set d_syslog eval $trylink diff --git a/mcon/U/d_system.U b/mcon/U/d_system.U index bedd1ef..f953e27 100644 --- a/mcon/U/d_system.U +++ b/mcon/U/d_system.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=system set d_system eval $trylink diff --git a/mcon/U/d_table.U b/mcon/U/d_table.U index bc059ae..f0df1c2 100644 --- a/mcon/U/d_table.U +++ b/mcon/U/d_table.U @@ -39,6 +39,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=table set d_table eval $trylink diff --git a/mcon/U/d_tcgtpgrp.U b/mcon/U/d_tcgtpgrp.U index 17c1f29..074d22b 100644 --- a/mcon/U/d_tcgtpgrp.U +++ b/mcon/U/d_tcgtpgrp.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=tcgetpgrp set d_tcgetpgrp eval $trylink diff --git a/mcon/U/d_tcstpgrp.U b/mcon/U/d_tcstpgrp.U index 03c2321..f6bb36d 100644 --- a/mcon/U/d_tcstpgrp.U +++ b/mcon/U/d_tcstpgrp.U @@ -43,6 +43,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=tcsetpgrp set d_tcsetpgrp eval $trylink diff --git a/mcon/U/d_truncate.U b/mcon/U/d_truncate.U index 59386f2..facbf2d 100644 --- a/mcon/U/d_truncate.U +++ b/mcon/U/d_truncate.U @@ -40,6 +40,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=truncate set d_truncate eval $trylink diff --git a/mcon/U/d_tzname.U b/mcon/U/d_tzname.U index 2be7aee..743c193 100644 --- a/mcon/U/d_tzname.U +++ b/mcon/U/d_tzname.U @@ -39,6 +39,7 @@ int main(void) return c ? 0 : 1; } EOC +cyn=tzname set d_tzname eval $trylink diff --git a/mcon/U/d_ulimit.U b/mcon/U/d_ulimit.U index 1881772..76fa757 100644 --- a/mcon/U/d_ulimit.U +++ b/mcon/U/d_ulimit.U @@ -36,6 +36,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=ulimit set d_ulimit eval $trylink diff --git a/mcon/U/d_umask.U b/mcon/U/d_umask.U index add2552..8f58bdc 100644 --- a/mcon/U/d_umask.U +++ b/mcon/U/d_umask.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=umask set d_umask eval $trylink diff --git a/mcon/U/d_usleep.U b/mcon/U/d_usleep.U index 9c9fc7f..461a860 100644 --- a/mcon/U/d_usleep.U +++ b/mcon/U/d_usleep.U @@ -38,6 +38,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=usleep set d_usleep eval $trylink diff --git a/mcon/U/d_vfork.U b/mcon/U/d_vfork.U index 492e42a..0345198 100644 --- a/mcon/U/d_vfork.U +++ b/mcon/U/d_vfork.U @@ -67,6 +67,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=vfork set val eval $trylink diff --git a/mcon/U/d_vsnprintf.U b/mcon/U/d_vsnprintf.U new file mode 100644 index 0000000..7c7508a --- /dev/null +++ b/mcon/U/d_vsnprintf.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_vsnprintf: Trylink cat +?MAKE: -pick add $@ %< +?S:d_vsnprintf: +?S: This variable conditionally defines the HAS_VSNPRINTF symbol, which +?S: indicates to the C program that the vsnprintf() routine is available. +?S:. +?C:HAS_VSNPRINTF: +?C: This symbol, if defined, indicates that the vsnprintf routine is +?C: available. +?C:. +?H:#$d_vsnprintf HAS_VSNPRINTF /**/ +?H:. +?LINT:set d_vsnprintf +: see if vsnprintf exists +$cat >try.c < +#include +int func(char *s, ...) +{ + static int ret; + static char buf; + static size_t n; + va_list ap; + (void) s; + ret |= vsnprintf(&buf, n, "fmt", ap); + return ret; +} + +int main(void) +{ + return func("xxx", 1); +} +EOC +cyn=vsnprintf +set d_vsnprintf +eval $trylink + diff --git a/mcon/U/d_wait3.U b/mcon/U/d_wait3.U index d49d440..3db3061 100644 --- a/mcon/U/d_wait3.U +++ b/mcon/U/d_wait3.U @@ -47,6 +47,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=wait3 set d_wait3 eval $trylink diff --git a/mcon/U/d_wait4.U b/mcon/U/d_wait4.U index 8de008b..f831230 100644 --- a/mcon/U/d_wait4.U +++ b/mcon/U/d_wait4.U @@ -46,6 +46,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=wait4 set d_wait4 eval $trylink diff --git a/mcon/U/d_waitpid.U b/mcon/U/d_waitpid.U index 892eb7d..2dac4e2 100644 --- a/mcon/U/d_waitpid.U +++ b/mcon/U/d_waitpid.U @@ -42,6 +42,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=waitpid set d_waitpid eval $trylink diff --git a/mcon/U/d_wcstombs.U b/mcon/U/d_wcstombs.U index 2305de3..ddb0805 100644 --- a/mcon/U/d_wcstombs.U +++ b/mcon/U/d_wcstombs.U @@ -41,6 +41,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=wcstombs set d_wcstombs eval $trylink diff --git a/mcon/U/d_wctomb.U b/mcon/U/d_wctomb.U index 5cfa9fa..c5496f5 100644 --- a/mcon/U/d_wctomb.U +++ b/mcon/U/d_wctomb.U @@ -47,6 +47,7 @@ int main(void) return ret ? 0 : 1; } EOC +cyn=wctomb set d_wctomb eval $trylink diff --git a/mcon/U/enablenls.U b/mcon/U/enablenls.U new file mode 100644 index 0000000..caeff33 --- /dev/null +++ b/mcon/U/enablenls.U @@ -0,0 +1,61 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:enablenls d_enablenls: Myread Setvar cat package d_nls +?MAKE: -pick add $@ %< +?S:enablenls: +?S: This variable holds 'true' or 'false' depending on whether we're +?S: goint to enable Native Language Support (NLS). +?S:. +?S:d_enablenls: +?S: This variable conditionally defines ENABLE_NLS. +?S:. +?C:ENABLE_NLS: +?C: This symbol, when defines, indicates that the program should enable +?C: Native Language Support (NLS) for internationalization (I18N). +?C:. +?H:#$d_enablenls ENABLE_NLS /**/ +?H:. +?LINT:set d_enablenls +: determine whether to enable NLS +echo " " +case "$d_nls" in +"$undef") + echo "I won't enable NLS since you don't have that feature." >&4 + val="$undef" + ;; +*) + $cat < is available or not +?X: +?MAKE:i_iconv: Inhdr +?MAKE: -pick add $@ %< +?S:i_iconv: +?S: This variable conditionally defines I_ICONV, which indicates +?S: to the C program that it should include . +?S:. +?C:I_ICONV: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_iconv I_ICONV /**/ +?H:. +?Y:BOTTOM +?LINT:set i_iconv +: see if this is a iconv.h system +set iconv.h i_iconv +eval $inhdr + diff --git a/mcon/U/i_ifaddrs.U b/mcon/U/i_ifaddrs.U new file mode 100644 index 0000000..c555254 --- /dev/null +++ b/mcon/U/i_ifaddrs.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_ifaddrs: Inhdr +?MAKE: -pick add $@ %< +?S:i_ifaddrs: +?S: This variable conditionally defines the I_IFADDRS symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_IFADDRS: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_ifaddrs I_IFADDRS /**/ +?H:. +?LINT:set i_ifaddrs +: see if this is a ifaddrs.h system +set ifaddrs.h i_ifaddrs +eval $inhdr + diff --git a/mcon/U/i_invent.U b/mcon/U/i_invent.U new file mode 100644 index 0000000..171f279 --- /dev/null +++ b/mcon/U/i_invent.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_invent: Inhdr +?MAKE: -pick add $@ %< +?S:i_invent: +?S: This variable conditionally defines the I_INVENT symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_INVENT: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_invent I_INVENT /**/ +?H:. +?LINT:set i_invent +: see if this is a invent.h system +set invent.h i_invent +eval $inhdr + diff --git a/mcon/U/i_langinfo.U b/mcon/U/i_langinfo.U new file mode 100644 index 0000000..4fb894b --- /dev/null +++ b/mcon/U/i_langinfo.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_langinfo: Inhdr +?MAKE: -pick add $@ %< +?S:i_langinfo: +?S: This variable conditionally defines the I_LANGINFO symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_LANGINFO: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_langinfo I_LANGINFO /**/ +?H:. +?LINT:set i_langinfo +: see if this is a langinfo system +set langinfo.h i_langinfo +eval $inhdr + diff --git a/mcon/U/i_libcharset.U b/mcon/U/i_libcharset.U new file mode 100644 index 0000000..6d369a9 --- /dev/null +++ b/mcon/U/i_libcharset.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_libcharset: Inhdr +?MAKE: -pick add $@ %< +?S:i_libcharset: +?S: This variable conditionally defines the I_LIBCHARSET symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_LIBCHARSET: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_libcharset I_LIBCHARSET /**/ +?H:. +?LINT:set i_libcharset +: see if this is a libcharset system +set libcharset.h i_libcharset +eval $inhdr + diff --git a/mcon/U/i_libintl.U b/mcon/U/i_libintl.U new file mode 100644 index 0000000..4277bc2 --- /dev/null +++ b/mcon/U/i_libintl.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_libintl: Inhdr +?MAKE: -pick add $@ %< +?S:i_libintl: +?S: This variable conditionally defines the I_LIBINTL symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_LIBINTL: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_libintl I_LIBINTL /**/ +?H:. +?LINT:set i_libintl +: see if this is a libintl system +set libintl.h i_libintl +eval $inhdr + diff --git a/mcon/U/i_netdb.U b/mcon/U/i_netdb.U new file mode 100644 index 0000000..fd29021 --- /dev/null +++ b/mcon/U/i_netdb.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_netdb: Inhdr +?MAKE: -pick add $@ %< +?S:i_netdb: +?S: This variable conditionally defines the I_NETDB symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_NETDB: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_netdb I_NETDB /**/ +?H:. +?LINT:set i_netdb +: see if this is a netdb.h system +set netdb.h i_netdb +eval $inhdr + diff --git a/mcon/U/i_netif.U b/mcon/U/i_netif.U new file mode 100644 index 0000000..6112253 --- /dev/null +++ b/mcon/U/i_netif.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_netif: Inhdr +?MAKE: -pick add $@ %< +?S:i_netif: +?S: This variable conditionally defines the I_NET_IF symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_NET_IF: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_netif I_NET_IF /**/ +?H:. +?LINT:set i_netif +: see if this is a net/if.h system +set net/if.h i_netif +eval $inhdr + diff --git a/mcon/U/i_niip.U b/mcon/U/i_niip.U new file mode 100644 index 0000000..5ea06c9 --- /dev/null +++ b/mcon/U/i_niip.U @@ -0,0 +1,30 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?X: +?X: This unit looks whether is available or not +?X: +?MAKE:i_niip: Inhdr +?MAKE: -pick add $@ %< +?S:i_niip: +?S: This variable conditionally defines I_NETINET_IP, which indicates +?S: to the C program that it should include . +?S:. +?C:I_NETINET_IP: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_niip I_NETINET_IP /**/ +?H:. +?LINT:set i_niip +: see if this is a netinet/ip.h system +set netinet/ip.h i_niip +eval $inhdr + diff --git a/mcon/U/i_sysmount.U b/mcon/U/i_sysmount.U new file mode 100644 index 0000000..33c7532 --- /dev/null +++ b/mcon/U/i_sysmount.U @@ -0,0 +1,29 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_sysmount: Inhdr +?MAKE: -pick add $@ %< +?S:i_sysmount: +?S: This variable conditionally defines the I_SYS_MOUNT symbol, and +?S: indicates whether a C program should include to be able +?S: to issue the statfs() call to get filesystem statistics. +?S:. +?C:I_SYS_MOUNT: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get the struct statfs definition for the +?C: statfs() system call. +?C:. +?H:#$i_sysmount I_SYS_MOUNT /**/ +?H:. +?LINT:set i_sysmount +: see if this is a sys/mount system +set sys/mount.h i_sysmount +eval $inhdr + diff --git a/mcon/U/i_syssendfile.U b/mcon/U/i_syssendfile.U new file mode 100644 index 0000000..16761f6 --- /dev/null +++ b/mcon/U/i_syssendfile.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_syssendfile: Inhdr +?MAKE: -pick add $@ %< +?S:i_syssendfile: +?S: This variable conditionally defines the I_SYS_SENDFILE symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_SYS_SENDFILE: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_syssendfile I_SYS_SENDFILE /**/ +?H:. +?LINT:set i_syssendfile +: see if this is a sys/sendfile system +set sys/sendfile.h i_syssendfile +eval $inhdr + diff --git a/mcon/U/i_sysstatvfs.U b/mcon/U/i_sysstatvfs.U new file mode 100644 index 0000000..86dd015 --- /dev/null +++ b/mcon/U/i_sysstatvfs.U @@ -0,0 +1,29 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_sysstatvfs: Inhdr +?MAKE: -pick add $@ %< +?S:i_sysstatvfs: +?S: This variable conditionally defines the I_SYS_STATVFS symbol, and indicates +?S: whether a C program should include to be able to issue +?S: the statvfs() call to get filesystem statistics. +?S:. +?C:I_SYS_STATVFS: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get the struct statvfs definition for the +?C: statvfs() system call. +?C:. +?H:#$i_sysstatvfs I_SYS_STATVFS /**/ +?H:. +?LINT:set i_sysstatvfs +: see if this is a sys/statvfs system +set sys/statvfs.h i_sysstatvfs +eval $inhdr + diff --git a/mcon/U/i_syssysctl.U b/mcon/U/i_syssysctl.U new file mode 100644 index 0000000..12d4167 --- /dev/null +++ b/mcon/U/i_syssysctl.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_syssysctl: Inhdr +?MAKE: -pick add $@ %< +?S:i_syssysctl: +?S: This variable conditionally defines the I_SYS_SYSCTL symbol, and indicates +?S: whether a C program should include . +?S:. +?C:I_SYS_SYSCTL: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_syssysctl I_SYS_SYSCTL /**/ +?H:. +?LINT:set i_syssysctl +: see if this is a sys/sysctl system +set sys/sysctl.h i_syssysctl +eval $inhdr + diff --git a/mcon/U/i_sysutsname.U b/mcon/U/i_sysutsname.U new file mode 100644 index 0000000..f743ba5 --- /dev/null +++ b/mcon/U/i_sysutsname.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_sysutsname: Inhdr +?MAKE: -pick add $@ %< +?S:i_sysutsname: +?S: This variable conditionally defines the I_SYS_UTSNAME symbol, and +?S: indicates whether a C program should include . +?S:. +?C:I_SYS_UTSNAME: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_sysutsname I_SYS_UTSNAME /**/ +?H:. +?LINT:set i_sysutsname +: see if this is a sys/utsname system +set sys/utsname.h i_sysutsname +eval $inhdr + diff --git a/mcon/U/i_sysvfs.U b/mcon/U/i_sysvfs.U new file mode 100644 index 0000000..db7ab95 --- /dev/null +++ b/mcon/U/i_sysvfs.U @@ -0,0 +1,29 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_sysvfs: Inhdr +?MAKE: -pick add $@ %< +?S:i_sysvfs: +?S: This variable conditionally defines the I_SYS_VFS symbol, and indicates +?S: whether a C program should include to be able to issue +?S: the statfs() call to get filesystem statistics. +?S:. +?C:I_SYS_VFS: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get the struct statfs definition for the +?C: statfs() system call. +?C:. +?H:#$i_sysvfs I_SYS_VFS /**/ +?H:. +?LINT:set i_sysvfs +: see if this is a sys/vfs system +set sys/vfs.h i_sysvfs +eval $inhdr + diff --git a/mcon/U/i_zlib.U b/mcon/U/i_zlib.U new file mode 100644 index 0000000..0110d6a --- /dev/null +++ b/mcon/U/i_zlib.U @@ -0,0 +1,31 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?X: +?X: This unit looks whether is available or not +?X: +?MAKE:i_zlib: Inhdr +?MAKE: -pick add $@ %< +?S:i_zlib: +?S: This variable conditionally defines I_ZLIB, which indicates +?S: to the C program that it should include . +?S:. +?C:I_ZLIB: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_zlib I_ZLIB /**/ +?H:. +?Y:BOTTOM +?LINT:set i_zlib +: see if this is a zlib.h system +set zlib.h i_zlib +eval $inhdr + diff --git a/mcon/U/locale.U b/mcon/U/locale.U new file mode 100644 index 0000000..9f55f45 --- /dev/null +++ b/mcon/U/locale.U @@ -0,0 +1,70 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:locale localeexp: Getfile Loc Oldconfig Prefixit Prefixup \ + cat prefixexp package spackage enablenls +?MAKE: -pick add $@ %< +?Y:TOP +?S:locale: +?S: This variable holds the name of the directory in which the user wants +?S: to put locale library files for the package in question. It is most +?S: often a local directory such as /usr/share/locale. Programs using this +?S: variable must be prepared to deal with filename expansion. +?S: Only meaningful when $enablenls holds true. +?S:. +?S:localeexp: +?S: This variable is the same as the locale variable, but is filename expanded +?S: at configuration time, for convenient use in your makefiles. +?S: Only meaningful when $enablenls holds true. +?S:. +?C:LOCALE: +?C: This symbol holds the place where localization files for the package +?C: are expected to be found. Be prepared to use ~name expansion, or rely +?C: on LOCALE_EXP to have an expanded value computed at configuration time. +?C: Only meaningful when ENABLE_NLS is defined. +?C:. +?C:LOCALE_EXP: +?C: This symbol holds the possibly ~name expanded place where localization +?C: files for the package are expected to be found. +?C: Only meaningful when ENABLE_NLS is defined. +?C:. +?H:#define LOCALE "$locale" +?H:#define LOCALE_EXP "$localeexp" +?H:. +: determine where locale files go +case "$enablenls" in +false) ;; +*) + set locale locale + eval $prefixit + case "$locale" in + '') + dflt=`./loc . "." $prefixexp/share/locale \ + /usr/share/locale /usr/local/share/locale` + set dflt + eval $prefixup + ;; + *) dflt="$locale";; + esac + fn=d~ + $cat <&4 +$msgmerge --help | $grep -- --update >msghelp +if $contains update msghelp >/dev/null 2>&1; then + echo "Good, it does." + msgmerge_update="$msgmerge --update" +else + echo "Sorry, it does not: we'll try to do without it." + msgmerge_update=":" +fi +$rm -f msghelp + diff --git a/mcon/U/official.U b/mcon/U/official.U new file mode 100644 index 0000000..9c8eae3 --- /dev/null +++ b/mcon/U/official.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:official d_official: Myread Setvar Warn +?MAKE: -pick add $@ %< +?S:official: +?S: This variable holds 'true' or 'false' depending on whether we're making +?S: an "official" build. When not official, generated programs may choose +?S: to peek within the source directory, for instance via $pkgsrc in the +?S: shell and PACKAGE_SOURCE_DIR in C programs. +?S:. +?S:d_official: +?S: This variable conditionally defines OFFICIAL_BUILD. +?S:. +?C:OFFICIAL_BUILD: +?C: When defined, the build is "official". Programs generated for an +?C: official build MUST NOT peek into the place where the sources lie, via +?C: PACKAGE_SOURCE_DIR or any other means. +?C:. +?H:#$d_official OFFICIAL_BUILD /**/ +?H:. +?Y:TOP +?LINT:set d_official +: determine whether this is an official build +case "$official" in +false) + official=false + val="$undef" + + ./warn 'This build will not be suitable for distribution.' 4>&4 + +;; +*) + val="$define" + official=true + ;; +esac +set d_official +eval $setvar + diff --git a/mcon/U/trnl.U b/mcon/U/trnl.U index cfdda60..5eeb908 100644 --- a/mcon/U/trnl.U +++ b/mcon/U/trnl.U @@ -23,7 +23,6 @@ ?S:. ?T: DJGPP : Find the appropriate value for a newline for tr -echo " " ?X: We can't use $tr since that would cause a circular dependency via Myread ?X: dos djgpp uses '\015\012', but reportedly is happy with '\012' in the ?X: tr command. I don't know why it passes the '\n' test but later @@ -53,7 +52,5 @@ $me: Fatal Error: cannot figure out how to translate newlines with 'tr'. EOM exit 1 -else - echo "We'll use '$trnl' to transliterate a newline." fi -- cgit v1.2.3 From c1d13fe0f4272b18a44fff07b956d4e4d206177d Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 00:21:26 +0000 Subject: Moved computation of the filename position in cpp output from Findhdr.U to a standalone unit. Extracted MIPS system detection from usrinc.U to Mips.U. Compute default value for usrinc by parsing cpp output. Added WINDOWS_SYSTEM define for Windows. Random cleanup. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@41 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/U/Alpha_mieee.U | 1 - mcon/U/Findhdr.U | 61 +++----------------------------------- mcon/U/GCC_pipe.U | 1 - mcon/U/Getfile.U | 3 +- mcon/U/Guess.U | 38 ++++++++++++++++++------ mcon/U/Head.U | 2 +- mcon/U/Mips.U | 69 +++++++++++++++++++++++++++++++++++++++++++ mcon/U/Signal.U | 2 +- mcon/U/d_iptos.U | 4 +-- mcon/U/fieldn.U | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++ mcon/U/libnlist.U | 2 +- mcon/U/libpth.U | 2 +- mcon/U/usrinc.U | 73 ++++++++++------------------------------------ 14 files changed, 210 insertions(+), 132 deletions(-) create mode 100644 mcon/U/Mips.U create mode 100644 mcon/U/fieldn.U diff --git a/MANIFEST b/MANIFEST index 9c382eb..fad70fb 100644 --- a/MANIFEST +++ b/MANIFEST @@ -108,6 +108,7 @@ mcon/U/Loc_sed.U Full path of sed interpreter, even when portable mcon/U/Magic_h.U Makes confmagic.h--bizarrity here mcon/U/MailAuthor.U Offers user to register himself mcon/U/MailList.U Offers user to subscribe to users list +mcon/U/Mips.U Are we on a MIPS system? mcon/U/Mkdirp.U Unit producing shell script to "mkdir -p" mcon/U/Mksymlinks.U Unit to generate symlink to source tree mcon/U/Myinit.U For copying to private U directories @@ -431,6 +432,7 @@ mcon/U/ebcdic.U Check for an EBCDIC system mcon/U/enablenls.U Shall we enable NLS? mcon/U/errnolist.U See if we need our own .c to get sys_errnolist[] mcon/U/etc.U Where administrative executable should go +mcon/U/fieldn.U Compute included filename position in cpp output mcon/U/filexp.U Finds location of filexp made by Filexp.U mcon/U/floatsize.U What is the size of "float"? mcon/U/fpostype.U What is the type for file positions? diff --git a/mcon/U/Alpha_mieee.U b/mcon/U/Alpha_mieee.U index 31ef1e7..9f9a784 100644 --- a/mcon/U/Alpha_mieee.U +++ b/mcon/U/Alpha_mieee.U @@ -14,7 +14,6 @@ ?LINT:change ccflags : check whether -mieee should be used flag='-mieee' -echo " " case "$gccversion" in '');; *) diff --git a/mcon/U/Findhdr.U b/mcon/U/Findhdr.U index 50f7ba7..bf70696 100644 --- a/mcon/U/Findhdr.U +++ b/mcon/U/Findhdr.U @@ -27,64 +27,11 @@ ?X: and it returns the full path of the include file and a zero status or an ?X: empty string with an error status if the file could not be located. ?X: -?MAKE:Findhdr: grep test tr rm +usrinc awk cat startsh \ - cppstdin cppminus +cppflags eunicefix osname +?MAKE:Findhdr: grep tr rm +usrinc awk cat startsh \ + cppstdin cppminus +cppflags eunicefix fieldn cppfilter ?MAKE: -pick add $@ %< -?LINT:define fieldn -?S:fieldn: -?S: This variable is used internally by Configure. It contains the position -?S: of the included file name in cpp output. That is to say, when cpp -?S: pre-processes a #include line, it replaces it by a # line which -?S: contains the original position in the input file and the full name of -?S: included file, between "quotes". -?S:. -?V:fieldn -?F:./findhdr !fieldn -?T:cline pos wanted name awkprg cppfilter testaccess status usrincdir -: determine filename position in cpp output -echo " " -echo "Computing filename position in cpp output for #include directives..." >&4 -echo '#include ' > foo.c -case "$osname" in -vos) - testaccess=-e -?X: VOS: path component separator is > - cppfilter="tr '\\\\>' '/' |" - ;; -*) - testaccess=-r - cppfilter='' - ;; -esac -$cat >fieldn </dev/null | \ -$grep '^[ ]*#.*stdio\.h' | \ -while read cline; do - pos=1 - set \$cline - while $test \$# -gt 0; do - if $test $testaccess \`echo \$1 | $tr -d '"'\`; then - echo "\$pos" - exit 0 - fi - shift - pos=\`expr \$pos + 1\` - done -done -EOF -chmod +x fieldn -fieldn=`./fieldn` -$rm -f foo.c fieldn -case $fieldn in -'') pos='???';; -1) pos=first;; -2) pos=second;; -3) pos=third;; -*) pos="${fieldn}th";; -esac -echo "Your cpp writes the filename in the $pos field of the line." - +?F:./findhdr +?T:cline wanted name awkprg status usrincdir ?X: To locate a header file, we cannot simply check for $usrinc/file.h, since ?X: some machine have the headers in weird places and our only hope is that ?X: the C pre-processor will know how to find those headers. Thank you NexT! diff --git a/mcon/U/GCC_pipe.U b/mcon/U/GCC_pipe.U index 0467450..c7ad886 100644 --- a/mcon/U/GCC_pipe.U +++ b/mcon/U/GCC_pipe.U @@ -14,7 +14,6 @@ ?LINT:change ccflags : check whether -pipe should be used flag='-pipe' -echo " " case "$gccversion" in '');; *) diff --git a/mcon/U/Getfile.U b/mcon/U/Getfile.U index fe917ad..d8dce00 100644 --- a/mcon/U/Getfile.U +++ b/mcon/U/Getfile.U @@ -221,8 +221,9 @@ while test "$type"; do ?X: Always expand ~user if '/' was requested case "$ansexp" in /*) value="$ansexp" ;; -?X: Allow for c:/some/path +?X: Allow for c:/some/path and c:\some\path [a-zA-Z]:/*) value="$ansexp" ;; + [a-zA-Z]:\\*) value="$ansexp" ;; *) redo=true case "$already" in diff --git a/mcon/U/Guess.U b/mcon/U/Guess.U index 3459325..59d0c64 100644 --- a/mcon/U/Guess.U +++ b/mcon/U/Guess.U @@ -34,8 +34,8 @@ ?X: is. The information it collects here is used primarily to establish default ?X: answers to other questions. ?X: -?MAKE:Guess d_eunice d_xenix d_bsd d_linux d_dos d_os2: cat test echo n c \ - contains rm tr Loc eunicefix +?MAKE:Guess d_eunice d_xenix d_bsd d_linux d_dos d_os2 d_windows: cat test \ + echo n c contains rm tr Loc eunicefix ?MAKE: -pick add $@ %< ?S:d_eunice: ?S: This variable conditionally defines the symbols EUNICE_SYSTEM, which @@ -61,6 +61,10 @@ ?S: This symbol conditionally defines the symbol LINUX_SYSTEM when running ?S: on a Linux system. ?S:. +?S:d_windows: +?S: This symbol conditionally defines the symbol WINDOWS_SYSTEM when running +?S: on a Windows system. +?S:. ?C:EUNICE_SYSTEM (EUNICE): ?C: This symbol, if defined, indicates that the program is being compiled ?C: under the EUNICE package under VMS. The program will need to handle @@ -92,6 +96,10 @@ ?C: This symbol, if defined, indicates that the program is running under ?C: a Linux system. ?C:. +?C:WINDOWS_SYSTEM: +?C: This symbol, if defined, indicates that the program is running under +?C: a Windows system. +?C:. ?H:#$d_eunice EUNICE_SYSTEM /**/ ?H:#$d_eunice VMS_SYSTEM /**/ ?H:#$d_xenix XENIX_SYSTEM /**/ @@ -99,8 +107,10 @@ ?H:#$d_os2 OS2_SYSTEM /**/ ?H:#$d_bsd BSD_SYSTEM /**/ ?H:#$d_linux LINUX_SYSTEM /**/ +?H:#$d_windows WINDOWS_SYSTEM /**/ ?H:. -?F:./bsd ./usg ./v7 ./osf1 ./eunice ./xenix ./venix ./dos ./os2 ./gnu ./linux +?F:./bsd ./usg ./v7 ./osf1 ./eunice ./xenix ./venix ./dos ./os2 ./gnu +?F:./windows ./linux ?T:xxx DJGPP MACHTYPE : make some quick guesses about what we are up against echo " " @@ -116,10 +126,12 @@ echo exit 1 >os2 echo exit 1 >gnu echo exit 1 >linux echo exit 1 >dos +echo exit 1 >windows d_bsd="$undef" d_linux="$undef" d_dos="$undef" d_os2="$undef" +d_windows="$undef" ?X: ?X: Do not use 'usrinc', or we get a circular dependency. because ?X: usrinc is defined in usrinc.U, which relies on us... @@ -178,6 +190,18 @@ EOI d_eunice="$undef" ;; esac +if test -d c:/.; then + case "X${MACHTYPE:-nonesuchmach}" in + *cygwin) echo " "; echo "Hah!... you're running under Cygwin!";; + *msys) echo " "; echo "Hah!... you're running under MinGW!";; + esac + case "X${MACHTYPE:-nonesuchmach}" in + *cygwin|*msys) + echo exit 0 >windows + d_windows="$define" + ;; + esac +fi case "$p_" in :) ;; *) @@ -185,10 +209,6 @@ case "$p_" in I have the feeling something is not exactly right, however...don't tell me... EOI if test -n "$DJGPP"; then - case "X${MACHTYPE:-nonesuchmach}" in - cygwin) echo "hah!... you're running under Cygwin!";; - *) echo "got it... you're running DOS with DJGPP!";; - esac echo exit 0 >dos d_dos="$define" else @@ -222,7 +242,7 @@ else echo "Nor is it Venix..." fi fi -chmod +x bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux -$eunicefix bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux +chmod +x bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux windows +$eunicefix bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux windows $rm -f foo diff --git a/mcon/U/Head.U b/mcon/U/Head.U index 7667c8a..e4ab8a7 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -139,7 +139,7 @@ if test -d c:/. ; then OS2_SHELL=`cmd /c "echo %OS2_SHELL%" | tr '\\\\' / | tr '[A-Z]' '[a-z]'` elif test -n "$DJGPP"; then case "X${MACHTYPE:-nonesuchmach}" in - *cygwin) ;; + *cygwin|*msys) ;; *) p_=\; ;; esac fi diff --git a/mcon/U/Mips.U b/mcon/U/Mips.U new file mode 100644 index 0000000..09bccf6 --- /dev/null +++ b/mcon/U/Mips.U @@ -0,0 +1,69 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: usrinc.U,v $ +?RCS: Revision 3.0.1.3 1997/02/28 16:27:12 ram +?RCS: patch61: don't ask for the include path unless they are on a MIPS +?RCS: +?RCS: Revision 3.0.1.2 1995/05/12 12:24:36 ram +?RCS: patch54: ensure that ./mips always exists (ADO) +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 15:18:31 ram +?RCS: patch23: ensure usrinc value is preserved accross sessions (WED) +?RCS: +?RCS: Revision 3.0 1993/08/18 12:09:58 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:Mips mips_type incpath: test cat echo n c Getfile Guess \ + Oldconfig eunicefix contains rm +?MAKE: -pick add $@ %< +?S:mips_type: +?S: This variable holds the environment type for the mips system. +?S: Possible values are "BSD 4.3" and "System V". +?S:. +?S:incpath: +?S: This variable must preceed the normal include path to get hte +?S: right one, as in "$incpath/usr/include" or "$incpath/usr/lib". +?S: Value can be "" or "/bsd43" on mips. +?S:. +?F:./mips !usr.c +: What should the include directory be ? +echo " " +$echo $n "Hmm... $c" +incpath='' +?X: mips_type is used later, to add -DSYSTYPE_BSD43 to cppflags if needed. +mips_type='' +?X: +?X: Cannot put the following in Guess, or we get a circular dependency. +?X: +if $test -f /bin/mips && /bin/mips; then + echo "Looks like a MIPS system..." + $cat >usr.c <<'EOCP' +#ifdef SYSTYPE_BSD43 +/bsd43 +#endif +EOCP + if cc -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then + dflt='/bsd43/usr/include' + incpath='/bsd43' + mips_type='BSD 4.3' + else + mips_type='System V' + fi + $rm -f usr.c usr.out + echo "and you're compiling with the $mips_type compiler and libraries." + echo "exit 0" >mips +else + echo "Doesn't look like a MIPS system." + echo "exit 1" >mips +fi +chmod +x mips +$eunicefix mips + diff --git a/mcon/U/Signal.U b/mcon/U/Signal.U index 6ac5eb8..5adfda5 100644 --- a/mcon/U/Signal.U +++ b/mcon/U/Signal.U @@ -40,7 +40,7 @@ ?X: This unit is then used by sig_name.U. ?X: ?MAKE:Signal: test tr rm awk cat grep startsh eunicefix sed sort uniq \ - Findhdr cppstdin +cppflags cppminus Compile trnl run + Findhdr cppstdin +cppflags cppminus Compile trnl run fieldn ?MAKE: -pick add $@ %< ?X:all files declared as "public" since they're used from other units ?F:signal.c signal_cmd signal.lst signal signal.awk diff --git a/mcon/U/d_iptos.U b/mcon/U/d_iptos.U index b7424c1..73ff978 100644 --- a/mcon/U/d_iptos.U +++ b/mcon/U/d_iptos.U @@ -45,7 +45,7 @@ $cat >iptos <iptos.h +$cppstdin $cppflags $cppminus iptos.h 2>/dev/null val="$undef" if $contains 'YES' iptos.h >/dev/null 2>&1; then val="$define" @@ -59,7 +59,7 @@ elif $test "x$i_niip" = "x$define"; then YES #endif EOM - $cppstdin $cppflags $cppminus iptos.h + $cppstdin $cppflags $cppminus iptos.h 2>/dev/null if $contains 'YES' iptos.h >/dev/null 2>&1; then val="$define" echo "You have IP TOS support in ." >&4 diff --git a/mcon/U/fieldn.U b/mcon/U/fieldn.U new file mode 100644 index 0000000..3fda06d --- /dev/null +++ b/mcon/U/fieldn.U @@ -0,0 +1,82 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: Findhdr.U,v $ +?RCS: Revision 3.0.1.2 1994/10/29 15:53:08 ram +?RCS: patch36: added ?F: line for metalint file checking +?RCS: +?RCS: Revision 3.0.1.1 1994/05/06 14:03:56 ram +?RCS: patch23: cppminus must be after other cppflags, not before +?RCS: +?RCS: Revision 3.0 1993/08/18 12:04:54 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:fieldn cppfilter: grep test tr rm cat startsh \ + cppstdin cppminus osname +?MAKE: -pick add $@ %< +?S:fieldn: +?S: This variable is used internally by Configure. It contains the position +?S: of the included file name in cpp output. That is to say, when cpp +?S: pre-processes a #include line, it replaces it by a # line which +?S: contains the original position in the input file and the full name of +?S: included file, between "quotes". +?S:. +?S:cppfilter: +?S: This variable is used internally by Configure. It either contains +?S: nothing or a shell piping stage to translate path components into "/". +?S: It is meant to be used as "... | $cppfilter $grep ..." i.e. without any +?S: explicit "|" character following it. +?S:. +?F:!fieldn +?T:pos testaccess cline +: determine filename position in cpp output +echo " " +echo "Computing filename position in cpp output for #include directives..." >&4 +echo '#include ' > foo.c +case "$osname" in +vos) + testaccess=-e +?X: VOS: path component separator is > + cppfilter="tr '\\\\>' '/' |" + ;; +*) + testaccess=-r + cppfilter='' + ;; +esac +$cat >fieldn </dev/null | \ +$grep '^[ ]*#.*stdio\.h' | \ +while read cline; do + pos=1 + set \$cline + while $test \$# -gt 0; do + if $test $testaccess \`echo \$1 | $tr -d '"'\`; then + echo "\$pos" + exit 0 + fi + shift + pos=\`expr \$pos + 1\` + done +done +EOF +chmod +x fieldn +fieldn=`./fieldn` +$rm -f foo.c fieldn +case $fieldn in +'') pos='???';; +1) pos=first;; +2) pos=second;; +3) pos=third;; +*) pos="${fieldn}th";; +esac +echo "Your cpp writes the filename in the $pos field of the line." + diff --git a/mcon/U/libnlist.U b/mcon/U/libnlist.U index f0f81e6..5e1e7f4 100644 --- a/mcon/U/libnlist.U +++ b/mcon/U/libnlist.U @@ -17,7 +17,7 @@ ?RCS: Revision 3.0 1993/08/18 12:09:00 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:libnlist: Loc libpth Guess usrinc _a +?MAKE:libnlist: Loc libpth Guess Mips usrinc _a ?MAKE: -pick add $@ %< ?S:libnlist (libmld): ?S: This variable contains the name of the library required to get the diff --git a/mcon/U/libpth.U b/mcon/U/libpth.U index dfbf2b8..d245bf7 100644 --- a/mcon/U/libpth.U +++ b/mcon/U/libpth.U @@ -35,7 +35,7 @@ ?X: This unit initializes the path for C library lookup. ?X: ?MAKE:libpth glibpth xlibpth plibpth loclibpth: \ - usrinc incpath test cat Myread Oldconfig + usrinc incpath test cat Myread Oldconfig Mips ?MAKE: -pick add $@ %< ?S:libpth: ?S: This variable holds the general path (space-separated) used to find diff --git a/mcon/U/usrinc.U b/mcon/U/usrinc.U index 4db8078..a3c21a9 100644 --- a/mcon/U/usrinc.U +++ b/mcon/U/usrinc.U @@ -21,73 +21,32 @@ ?RCS: Revision 3.0 1993/08/18 12:09:58 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:usrinc incpath mips_type: test cat echo n c Getfile Guess \ - Oldconfig eunicefix contains rm +?MAKE:usrinc: cat Getfile Guess Oldconfig cppstdin cppminus \ + fieldn grep sed awk tr ?MAKE: -pick add $@ %< ?S:usrinc: ?S: This variable holds the path of the include files, which is ?S: usually /usr/include. It is mainly used by other Configure units. ?S:. -?S:incpath: -?S: This variable must preceed the normal include path to get hte -?S: right one, as in "$incpath/usr/include" or "$incpath/usr/lib". -?S: Value can be "" or "/bsd43" on mips. -?S:. -?S:mips_type: -?S: This variable holds the environment type for the mips system. -?S: Possible values are "BSD 4.3" and "System V". -?S:. ?D:usrinc='/usr/include' -?LINT:create mips -?T:xxx_prompt -?F:./mips +?F:!usr.c : What should the include directory be ? echo " " -$echo $n "Hmm... $c" dflt='/usr/include' -incpath='' -?X: mips_type is used later, to add -DSYSTYPE_BSD43 to cppflags if needed. -mips_type='' -?X: -?X: Cannot put the following in Guess, or we get a circular dependency. -?X: -if $test -f /bin/mips && /bin/mips; then - echo "Looks like a MIPS system..." - $cat >usr.c <<'EOCP' -#ifdef SYSTYPE_BSD43 -/bsd43 -#endif -EOCP - if cc -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then - dflt='/bsd43/usr/include' - incpath='/bsd43' - mips_type='BSD 4.3' - else - mips_type='System V' - fi - $rm -f usr.c usr.out - echo "and you're compiling with the $mips_type compiler and libraries." - xxx_prompt=y - echo "exit 0" >mips -else - echo "Doesn't look like a MIPS system." - xxx_prompt=n - echo "exit 1" >mips -fi -chmod +x mips -$eunicefix mips case "$usrinc" in -'') ;; -*) dflt="$usrinc";; -esac -case "$xxx_prompt" in -y) fn=d/ - echo " " - rp='Where are the include files you want to use?' - . ./getfile - usrinc="$ans" - ;; -*) usrinc="$dflt" +'') + $cat >usr.c < +EOC + dflt=`$cppstdin $cppminus < usr.c 2>/dev/null | \ + $grep "^[ ]*#.*stdio.h" | $tr -d '"' | \ + $sed -ne "1s,\(.*\)[/\\]stdio.h.*,\1,p" | \ + $awk "{ print \\$$fieldn }"` ;; +*) dflt="$usrinc";; esac +fn=d/ +rp='Where are the include files you want to use?' +. ./getfile +usrinc="$ans" -- cgit v1.2.3 From 54f74c0343541c289ff3e40f3e61e1a937882682 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 18:15:13 +0000 Subject: Force extraction of the revision from $TOP/revision.h. Updated bin/svn-revision now that the format of the REVISION line changed. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@42 2592e710-e01b-42a5-8df0-11608a6cc53d --- bin/svn-revision | 2 +- jmake/fixcpp.SH | 1 + jmake/jmake.SH | 1 + mcon/mconfig.SH | 1 + mcon/mlint.SH | 1 + mcon/mxref.SH | 1 + 6 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bin/svn-revision b/bin/svn-revision index 2abde75..c698135 100755 --- a/bin/svn-revision +++ b/bin/svn-revision @@ -25,7 +25,7 @@ if [ "x$FILE" = x ]; then FILE="&1" oldrev='' else - oldrev=`grep REVISION "$FILE" 2>/dev/null | head -n1 | cut -d' ' -f3` + oldrev=`grep REVISION "$FILE" 2>/dev/null | head -n1 | cut -d' ' -f4` fi if test -d "$TOP/.svn"; then diff --git a/jmake/fixcpp.SH b/jmake/fixcpp.SH index d5b640f..879478a 100755 --- a/jmake/fixcpp.SH +++ b/jmake/fixcpp.SH @@ -11,6 +11,7 @@ case $CONFIG in . $TOP/config.sh ;; esac +REVISION=`grep REVISION $TOP/revision.h | head -n1 | cut -d' ' -f4` case "$0" in */*) cd `expr X$0 : 'X\(.*\)/'` ;; esac diff --git a/jmake/jmake.SH b/jmake/jmake.SH index badb880..bbabfa5 100755 --- a/jmake/jmake.SH +++ b/jmake/jmake.SH @@ -11,6 +11,7 @@ case $CONFIG in . $TOP/config.sh ;; esac +REVISION=`grep REVISION $TOP/revision.h | head -n1 | cut -d' ' -f4` case "$0" in */*) cd `expr X$0 : 'X\(.*\)/'` ;; esac diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index 94ade5f..18e09dc 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -11,6 +11,7 @@ case $CONFIG in . $TOP/config.sh ;; esac +REVISION=`grep REVISION $TOP/revision.h | head -n1 | cut -d' ' -f4` case "$0" in */*) cd `expr X$0 : 'X\(.*\)/'` ;; esac diff --git a/mcon/mlint.SH b/mcon/mlint.SH index 9e0cbf6..e9c9f4c 100755 --- a/mcon/mlint.SH +++ b/mcon/mlint.SH @@ -11,6 +11,7 @@ case $CONFIG in . $TOP/config.sh ;; esac +REVISION=`grep REVISION $TOP/revision.h | head -n1 | cut -d' ' -f4` case "$0" in */*) cd `expr X$0 : 'X\(.*\)/'` ;; esac diff --git a/mcon/mxref.SH b/mcon/mxref.SH index b6d8dcb..81d8a78 100755 --- a/mcon/mxref.SH +++ b/mcon/mxref.SH @@ -11,6 +11,7 @@ case $CONFIG in . $TOP/config.sh ;; esac +REVISION=`grep REVISION $TOP/revision.h | head -n1 | cut -d' ' -f4` case "$0" in */*) cd `expr X$0 : 'X\(.*\)/'` ;; esac -- cgit v1.2.3 From 59850e4d0446e5430d8b460af8fcdedabcaa1d7a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 18:22:20 +0000 Subject: Restored old code, commenting out the attempt to gather the include path by parsing cpp output. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@43 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/usrinc.U | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/mcon/U/usrinc.U b/mcon/U/usrinc.U index a3c21a9..e3ac4e6 100644 --- a/mcon/U/usrinc.U +++ b/mcon/U/usrinc.U @@ -21,28 +21,30 @@ ?RCS: Revision 3.0 1993/08/18 12:09:58 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:usrinc: cat Getfile Guess Oldconfig cppstdin cppminus \ - fieldn grep sed awk tr +?MAKE:usrinc: Getfile Oldconfig incpath ?MAKE: -pick add $@ %< ?S:usrinc: ?S: This variable holds the path of the include files, which is ?S: usually /usr/include. It is mainly used by other Configure units. ?S:. ?D:usrinc='/usr/include' -?F:!usr.c : What should the include directory be ? echo " " dflt='/usr/include' case "$usrinc" in -'') - $cat >usr.c < -EOC - dflt=`$cppstdin $cppminus < usr.c 2>/dev/null | \ - $grep "^[ ]*#.*stdio.h" | $tr -d '"' | \ - $sed -ne "1s,\(.*\)[/\\]stdio.h.*,\1,p" | \ - $awk "{ print \\$$fieldn }"` - ;; +'') dflt="$incpath/usr/include";; +?X: This is nice, but it does not work on some systems because gcc redirects +?X: the include to things like ..../gcc45/gcc/4.5.2/include-fixed/stdio.h +?X: and it does not contain all the files. +?X: +?X: $cat >usr.c < +?X:EOC +?X: dflt=`$cppstdin $cppminus < usr.c 2>/dev/null | \ +?X: $grep "^[ ]*#.*stdio.h" | $tr -d '"' | \ +?X: $sed -ne "1s,\(.*\)[/\\]stdio.h.*,\1,p" | \ +?X: $awk "{ print \\$$fieldn }"` +?X: ;; *) dflt="$usrinc";; esac fn=d/ -- cgit v1.2.3 From a49c0139552046374e65ef410107de0e36232e16 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 19:03:51 +0000 Subject: Add manual dependency on $(TOP)/revision.h since that cannot be automatically computed by the depend target. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@44 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/Jmakefile | 1 + mcon/Jmakefile | 1 + 2 files changed, 2 insertions(+) diff --git a/jmake/Jmakefile b/jmake/Jmakefile index ae82b24..f156184 100644 --- a/jmake/Jmakefile +++ b/jmake/Jmakefile @@ -49,3 +49,4 @@ depend:: cp Makefile.new Makefile $(RM) Makefile.new +fixcpp jmake: $(TOP)/revision.h diff --git a/mcon/Jmakefile b/mcon/Jmakefile index c40afd8..ae51fc1 100644 --- a/mcon/Jmakefile +++ b/mcon/Jmakefile @@ -84,3 +84,4 @@ depend:: cp Makefile.new Makefile $(RM) Makefile.new +mconfig mlint mxref: $(TOP)/revision.h -- cgit v1.2.3 From b76436fcc548952d41909ca16bba14372cc44460 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 19:04:57 +0000 Subject: Regenerated. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@45 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/Makefile.SH | 10 ++++++---- mcon/Makefile.SH | 10 ++++++---- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/jmake/Makefile.SH b/jmake/Makefile.SH index 6a651e3..bc67bb9 100755 --- a/jmake/Makefile.SH +++ b/jmake/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] -: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] +: $X-Id: Jmake.tmpl 30 2009-10-28 07:45:28Z rmanfredi $ case $CONFIG in '') @@ -59,12 +59,12 @@ SCRIPTS = jmake jmkmf $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ +# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 3 2006-08-25 21:39:07Z rmanfredi $ +# $X-Id: Jmakefile 44 2010-11-28 19:03:51Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # @@ -219,6 +219,8 @@ depend:: cp Makefile.new Makefile $(RM) Makefile.new +fixcpp jmake: $(TOP)/revision.h + ######################################################################## # Common rules for all Makefiles -- do not edit diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH index c27f901..2bf90de 100755 --- a/mcon/Makefile.SH +++ b/mcon/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] -: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] +: $X-Id: Jmake.tmpl 30 2009-10-28 07:45:28Z rmanfredi $ case $CONFIG in '') @@ -58,12 +58,12 @@ BIN = metaconfig metalint metaxref $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ +# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ +# $X-Id: Jmakefile 44 2010-11-28 19:03:51Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # @@ -275,6 +275,8 @@ depend:: cp Makefile.new Makefile $(RM) Makefile.new +mconfig mlint mxref: $(TOP)/revision.h + ######################################################################## # Common rules for all Makefiles -- do not edit -- cgit v1.2.3 From ac949fa6c6607bc913ec5ba9515417f89c8348e5 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 22:19:54 +0000 Subject: If we can't link against -lsocker, empty the socker flags. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@46 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_socker_get.U | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/mcon/U/d_socker_get.U b/mcon/U/d_socker_get.U index e92b97a..c92d4a3 100644 --- a/mcon/U/d_socker_get.U +++ b/mcon/U/d_socker_get.U @@ -33,7 +33,7 @@ case "$d_socker_get" in "$undef") echo " "; echo "socker support is disabled." >&4;; *) -$cat >try.c <<'EOC' + $cat >try.c <<'EOC' #include #include int main(void) @@ -43,20 +43,23 @@ int main(void) return ret ? 0 : 1; } EOC - -sockercflags=`socker-config --cflags 2>/dev/null` -sockerldflags=`socker-config --libs 2>/dev/null` - -saved_ccflags=$ccflags -saved_ldflags=$ldflags -ccflags="$ccflags $sockercflags" -ldflags="$ldflags $sockerldflags" -cyn="whether socket_get() allows binding to privileged ports" -set d_socker_get -eval $trylink - -ccflags=$saved_ccflags -ldflags=$saved_ldflags -;; + sockercflags=`socker-config --cflags 2>/dev/null` + sockerldflags=`socker-config --libs 2>/dev/null` + saved_ccflags=$ccflags + saved_ldflags=$ldflags + ccflags="$ccflags $sockercflags" + ldflags="$ldflags $sockerldflags" + cyn="whether socket_get() allows binding to privileged ports" + set d_socker_get + eval $trylink + ccflags=$saved_ccflags + ldflags=$saved_ldflags + case "$d_socker_get" in + "$undef") + sockercflags='' + sockerldflags='' + ;; + esac + ;; esac -- cgit v1.2.3 From 17a95c14fc05fe53f250d627b55ea588321c7129 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 22:23:13 +0000 Subject: Not all depend targets use $(MKDEP) so added a construct to check whether a target is being used. Protect the "DO NOT DELETE" line in the jmake template with a condition on the "depend" target being used. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@47 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/Makefile.SH | 7 +++++++ jmake/files/Jmake.tmpl | 2 +- jmake/jmake.SH | 21 +++++++++++++++++++++ jmake/jmake.man | 37 ++++++++++++++++++++++++++++++++----- mcon/Makefile.SH | 7 +++++++ 5 files changed, 68 insertions(+), 6 deletions(-) diff --git a/jmake/Makefile.SH b/jmake/Makefile.SH index bc67bb9..2af8e44 100755 --- a/jmake/Makefile.SH +++ b/jmake/Makefile.SH @@ -299,6 +299,13 @@ Makefiles:: Makefiles.SH:: +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index df1a189..f684048 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -241,7 +241,7 @@ Makefiles:: Makefiles.SH:: -skip /* No sub-directories */ -%MKDEP:|skip /* Skip if no depend target */ +%depend%:|skip /* Skip if no depend target */ ;######################################################################## ;# Dependencies generated by make depend ;# DO NOT DELETE THIS LINE -- make depend relies on it diff --git a/jmake/jmake.SH b/jmake/jmake.SH index bbabfa5..3973185 100755 --- a/jmake/jmake.SH +++ b/jmake/jmake.SH @@ -219,6 +219,8 @@ $SPIT_END = "!NO!SUBS!\n"; $GROK_START = "\$spitshell >>Makefile <Makefile.SH"); # We have to use for instead of foreach to handle 'skip' easily line: for ($i = 0; $i <= $#makefile; $i++) { @@ -309,6 +311,20 @@ line: for ($i = 0; $i <= $#makefile; $i++) { s//[jmake $version-$revision]/; + # Lines starting with ?target?: (resp. %target%:) are to be processd + # only when target is used (resp. unused) in the generated makefile. + + # Apply in sequence + while (/^\s*\?|\s*%/) { + if (s/^\s*\?([\w-.]+)\?://) { # Wanted target ? + next line unless $target{$1}; + } elsif (s/^\s*%([\w-.]+)%://) { # Unwanted target ? + next line if $target{$1}; + } else { + last; + } + } + # Lines starting with ?SYMBOL: (resp. %SYMBOL:) are to be processed # only if SYMBOL is defined (resp. undefined). @@ -397,6 +413,11 @@ line: for ($i = 0; $i <= $#makefile; $i++) { print MAKEFILE "$_\n"; } } else { + # Keep track of the targets we generate for ?target? and %target% type + # of tests in the templates, which can generate specific code when + # a target is indeed present. + $target{$1}++ if /^([\w.-]+):/; + &print_makefile($_); } } diff --git a/jmake/jmake.man b/jmake/jmake.man index 5c837e4..66b306d 100644 --- a/jmake/jmake.man +++ b/jmake/jmake.man @@ -152,6 +152,33 @@ To implement a logical OR, see below. .RE .sp .IP 3) +Makefile target tests: +.sp +.RS +.IP \(bu +?\fItarget\fR?:: keeps iff \fItarget\fR is defined. +.IP \(bu +%\fItarget\fR%:: keeps iff \fItarget\fR is not defined. +.sp +A makefile \fItarget\fR is defined as a standalone target, for instance +the +.B depend.local +target, which would be defined as: +.sp +.in +5 +.nf +depend.local: +.sp +.in -5 +.fi +Also note that it is only valid for targets defined +.I so far +in the generated makefile. It is not a predicate that can be used +to test for targets that will eventually be defined later on in the +generation. +.RE +.sp +.IP 4) Commands: .sp .RS @@ -217,9 +244,9 @@ Here is a way to implement a logical OR: .in -5 .sp Actually, this is ugly, because the text has to appear twice. -Fortunately, I did not use it. :-) +Fortunately, I did not use that construct. :-) .sp -But actually, as you have surely already guessed, the best way to +Indeed, as you have surely already guessed, the best way to implement a logical OR is to use De Morgan's Law: .sp .in +5 @@ -233,7 +260,7 @@ text /* If SYMBOL or not TOKEN */ .sp .in -5 .fi -Who said they didn't care ? ;-) +Who said they didn't care about logic? ;-) .sp .PP Expansion is done with the \fIexpand\fR command. It has been provided to @@ -440,7 +467,7 @@ therefore depend on the configuration options chosen when \fIConfigure\fR was run. .RE .sp -.IP 4) +.IP 5) Initializations: .sp .RS @@ -450,7 +477,7 @@ Initializations: ++SYMBOL : Adds to the SYMBOL macro. .RE .sp -.IP 5) +.IP 6) User-defined variables: .sp The user may define CFLAGS, LDFLAGS or DPFLAGS as additional flags to be used diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH index 2bf90de..dece2f3 100755 --- a/mcon/Makefile.SH +++ b/mcon/Makefile.SH @@ -412,6 +412,13 @@ local_deinstall:: local_install.man:: local_deinstall.man:: +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile -- cgit v1.2.3 From 36a47742bb84eb86d0a1095bbbefd6e905f39d4f Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 23:05:09 +0000 Subject: Added the notion of local_depend and sub_depend. This allows one to do a "make local_depend" after Makefile.SH extraction without having to recurse to subdirs. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@48 2592e710-e01b-42a5-8df0-11608a6cc53d --- Jmakefile | 2 +- Makefile.SH | 12 ++++++++---- bin/Jmakefile | 3 ++- bin/Makefile.SH | 18 ++++++++++++++---- jmake/Jmakefile | 3 ++- jmake/Makefile.SH | 7 +++++-- jmake/files/Jmake.rules | 24 +++++++++++++++++++++--- jmake/files/Jmake.tmpl | 9 +++++++-- kit/Jmakefile | 3 ++- kit/Makefile.SH | 18 ++++++++++++++---- lib/Makefile.SH | 8 +++++--- mcon/Jmakefile | 3 ++- mcon/Makefile.SH | 7 +++++-- pat/Jmakefile | 3 ++- pat/Makefile.SH | 18 ++++++++++++++---- 15 files changed, 104 insertions(+), 34 deletions(-) diff --git a/Jmakefile b/Jmakefile index 1e1f1c7..40e77dd 100644 --- a/Jmakefile +++ b/Jmakefile @@ -26,7 +26,7 @@ all:: /* So that default target is not clobber! */ SetSubdirs(bin mcon jmake pat kit lib) -DependDirs(bin mcon pat jmake kit) +DependSubdirs() AddedByConfigure(install) InstallManPage(dist,$(MANSRC)) diff --git a/Makefile.SH b/Makefile.SH index 4915130..e9b18dd 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-17] -: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] +: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ case $CONFIG in '') @@ -84,9 +84,11 @@ $spitshell >>Makefile <<'!NO!SUBS!' all:: -depend:: +depend:: sub_depend + +sub_depend:: @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ - for i in bin mcon pat jmake kit ;\ + for i in $(SUBDIRS) ;\ do \ (cd $$i ; echo "Depending" "in $(DIR)$$i..."; \ $(MAKE) $(MFLAGS) depend) || exit 1; \ @@ -173,6 +175,8 @@ tags:: local_clobber:: $(RM) tags +depend:: + ######################################################################## # Rules for building in sub-directories -- do not edit diff --git a/bin/Jmakefile b/bin/Jmakefile index aac4157..0f13799 100644 --- a/bin/Jmakefile +++ b/bin/Jmakefile @@ -30,7 +30,8 @@ BINSH = \ !f.SH \ -expand \\ -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(BINSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>[ ]*\([^ ]*\)/\2: \1/" \ diff --git a/bin/Makefile.SH b/bin/Makefile.SH index 35630ec..492267c 100755 --- a/bin/Makefile.SH +++ b/bin/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] -: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] +: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ case $CONFIG in '') @@ -58,7 +58,7 @@ SCRIPTS = \$(BIN) $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ +# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ ######################################################################## # Start of Jmakefile @@ -138,7 +138,8 @@ BINSH = \ packinit.SH \ manilist.SH -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(BINSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>[ ]*\([^ ]*\)/\2: \1/" \ @@ -206,6 +207,8 @@ tags:: local_clobber:: $(RM) tags +depend:: + ######################################################################## # Empty rules for directories with no sub-directories -- do not edit @@ -225,6 +228,13 @@ Makefiles:: Makefiles.SH:: +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/jmake/Jmakefile b/jmake/Jmakefile index f156184..e204d7d 100644 --- a/jmake/Jmakefile +++ b/jmake/Jmakefile @@ -40,7 +40,8 @@ InstallMultipleFlags(files/Jmake*,$(PRIVLIB)/files,-m 444) BINSH = jmake.SH fixcpp.SH -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(BINSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ diff --git a/jmake/Makefile.SH b/jmake/Makefile.SH index 2af8e44..0e859ea 100755 --- a/jmake/Makefile.SH +++ b/jmake/Makefile.SH @@ -1,5 +1,5 @@ : Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] -: $X-Id: Jmake.tmpl 30 2009-10-28 07:45:28Z rmanfredi $ +: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ case $CONFIG in '') @@ -210,7 +210,8 @@ local_deinstall:: BINSH = jmake.SH fixcpp.SH -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(BINSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ @@ -280,6 +281,8 @@ tags:: local_clobber:: $(RM) tags +depend:: + ######################################################################## # Empty rules for directories with no sub-directories -- do not edit diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index 21ef3fe..43bc10a 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -554,7 +554,7 @@ DeinstallMultipleDest(local_deinstall.man,list,dest) * Generate rules to build the makedepend program. */ #define DependDependency() @!\ -depend:: TOPDIR/mkdep @!\ +local_depend:: TOPDIR/mkdep @!\ @!\ TOPDIR/mkdep: @!\ ?TOP: @echo "You have to run Configure first."; exit 1 @!\ @@ -571,7 +571,8 @@ TOPDIR/mkdep: @!\ |once _DependTarget_ @!\ DependDependency() @!\ @!\ -depend:: @@\ +depend:: local_depend @!\ +local_depend:: @@\ ($(SED) '/^# DO NOT DELETE/q' Makefile && \ @@\ $(MKDEP) $(SOURCES) | \ @@\ $(SED) -e 's:/usr/lib[^ ]*::g; s:$(USRINC)[^ ]*::g; ' \ @@\ @@ -1167,6 +1168,22 @@ name:: @@\ done +/* + * NamedTargetSubdirsAsRule: + * Recursively make a series of steps in the specified directories, + * where the name of the local rule is different from the recursive + * actions. + */ +#define NamedTargetSubdirsAsRule(dirs,localname,name,verb,flags) @!\ +localname:: @@\ + @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ @@\ + for i in dirs ;\ @@\ + do \ @@\ + (cd $$i ; echo verb "in $(DIR)$$i..."; \ @@\ + $(MAKE) $(MFLAGS) flags name) || exit 1; \ @@\ + done + + /* * NamedTargetSubdirs: * Recursively make a series of steps. @@ -1211,7 +1228,8 @@ NamedTargetSubdirs(all,"Making all",^^) * make depend step. */ #define DependDirs(dirs) \ -NamedTargetSubdirsRule(dirs,depend,"Depending",^^) +depend:: sub_depend @!\ +NamedTargetSubdirsAsRule(dirs,sub_depend,depend,"Depending",^^) /* diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index f684048..71c14a8 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -193,6 +193,11 @@ maybe_deinstall.man: deinstall.man-no MakefileTarget() TagsTarget() +/* + * Empty rules in case there is no depend target. + */ +depend:: + %SUBDIRS:|skip /* Skip if no sub-directories */ ;######################################################################## ;# Rules for building in sub-directories -- do not edit @@ -240,8 +245,8 @@ Makefiles:: Makefiles.SH:: --skip /* No sub-directories */ -%depend%:|skip /* Skip if no depend target */ +-skip /* No sub-directories */ +%local_depend%:|skip /* Skip if no local depend target */ ;######################################################################## ;# Dependencies generated by make depend ;# DO NOT DELETE THIS LINE -- make depend relies on it diff --git a/kit/Jmakefile b/kit/Jmakefile index fed4548..c43db69 100644 --- a/kit/Jmakefile +++ b/kit/Jmakefile @@ -34,7 +34,8 @@ SCRIPTSH = \ !f.SH \ -expand \\ -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(SCRIPTSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>[ ]*\([^ ]*\)/\2: \1/" \ diff --git a/kit/Makefile.SH b/kit/Makefile.SH index eacff2c..b9a3a49 100755 --- a/kit/Makefile.SH +++ b/kit/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] -: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] +: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ case $CONFIG in '') @@ -58,7 +58,7 @@ SCRIPTS = \$(SCRIPT) $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ +# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ ######################################################################## # Start of Jmakefile @@ -163,7 +163,8 @@ SCRIPTSH = \ kitsend.SH \ kitpost.SH -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(SCRIPTSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>[ ]*\([^ ]*\)/\2: \1/" \ @@ -231,6 +232,8 @@ tags:: local_clobber:: $(RM) tags +depend:: + ######################################################################## # Empty rules for directories with no sub-directories -- do not edit @@ -250,6 +253,13 @@ Makefiles:: Makefiles.SH:: +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile diff --git a/lib/Makefile.SH b/lib/Makefile.SH index 9988b2f..aef1682 100755 --- a/lib/Makefile.SH +++ b/lib/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] -: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] +: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ case $CONFIG in '') @@ -55,7 +55,7 @@ SUBDIRS = C $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ +# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ ######################################################################## # Start of Jmakefile @@ -181,6 +181,8 @@ tags:: local_clobber:: $(RM) tags +depend:: + ######################################################################## # Rules for building in sub-directories -- do not edit diff --git a/mcon/Jmakefile b/mcon/Jmakefile index ae51fc1..4c2955e 100644 --- a/mcon/Jmakefile +++ b/mcon/Jmakefile @@ -75,7 +75,8 @@ BINSH = \ !f.SH \ -expand \\ -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(BINSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH index dece2f3..9024ec1 100755 --- a/mcon/Makefile.SH +++ b/mcon/Makefile.SH @@ -1,5 +1,5 @@ : Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] -: $X-Id: Jmake.tmpl 30 2009-10-28 07:45:28Z rmanfredi $ +: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ case $CONFIG in '') @@ -266,7 +266,8 @@ BINSH = \ mlint.SH \ mxref.SH -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(BINSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ @@ -326,6 +327,8 @@ tags:: local_clobber:: $(RM) tags +depend:: + ######################################################################## # Rules for building in sub-directories -- do not edit diff --git a/pat/Jmakefile b/pat/Jmakefile index 40f8ced..ee31e68 100644 --- a/pat/Jmakefile +++ b/pat/Jmakefile @@ -50,7 +50,8 @@ PATSH = \ !f.SH \ -expand \\ -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(PATSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ diff --git a/pat/Makefile.SH b/pat/Makefile.SH index d6a7a10..9e3b961 100755 --- a/pat/Makefile.SH +++ b/pat/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5 PL0] -: $X-Id: Jmake.tmpl 8 2006-08-25 22:27:18Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] +: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ case $CONFIG in '') @@ -53,7 +53,7 @@ SED = $sed $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 8 2006-08-25 22:27:18Z rmanfredi $ +# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ ######################################################################## # Start of Jmakefile @@ -194,7 +194,8 @@ PATSH = \ patsnap.SH \ patlog.SH -depend:: +depend:: local_depend +local_depend:: ($(SED) '/^# DO NOT DELETE/q' Makefile && \ grep '^\$$grep' $(PATSH) | \ $(SED) -e "s/^.*' \([^ ]*\) >>\([^ ]*\)/\2: \1/" \ @@ -262,6 +263,8 @@ tags:: local_clobber:: $(RM) tags +depend:: + ######################################################################## # Empty rules for directories with no sub-directories -- do not edit @@ -281,6 +284,13 @@ Makefiles:: Makefiles.SH:: +######################################################################## +# Dependencies generated by make depend +# DO NOT DELETE THIS LINE -- make depend relies on it + +# Put nothing here or make depend will gobble it up +.FORCE_DEPEND:: + @echo "You must run 'make depend' in $(TOP) first."; exit 1 !NO!SUBS! chmod 644 Makefile $eunicefix Makefile -- cgit v1.2.3 From 383e199f516789518200cee15869d03e47e6b229 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 23:06:23 +0000 Subject: Regenerated. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@49 2592e710-e01b-42a5-8df0-11608a6cc53d --- Makefile.SH | 2 +- bin/Makefile.SH | 2 +- jmake/Makefile.SH | 2 +- kit/Makefile.SH | 2 +- mcon/Makefile.SH | 2 +- pat/Makefile.SH | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Makefile.SH b/Makefile.SH index e9b18dd..6dfeac7 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -61,7 +61,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 25 2008-05-28 11:19:25Z rmanfredi $ +# $X-Id: Jmakefile 48 2010-11-28 23:05:09Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # diff --git a/bin/Makefile.SH b/bin/Makefile.SH index 492267c..89aaec1 100755 --- a/bin/Makefile.SH +++ b/bin/Makefile.SH @@ -63,7 +63,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ +# $X-Id: Jmakefile 48 2010-11-28 23:05:09Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # diff --git a/jmake/Makefile.SH b/jmake/Makefile.SH index 0e859ea..eaa7517 100755 --- a/jmake/Makefile.SH +++ b/jmake/Makefile.SH @@ -64,7 +64,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 44 2010-11-28 19:03:51Z rmanfredi $ +# $X-Id: Jmakefile 48 2010-11-28 23:05:09Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # diff --git a/kit/Makefile.SH b/kit/Makefile.SH index b9a3a49..6badd31 100755 --- a/kit/Makefile.SH +++ b/kit/Makefile.SH @@ -63,7 +63,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ +# $X-Id: Jmakefile 48 2010-11-28 23:05:09Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH index 9024ec1..6559d5a 100755 --- a/mcon/Makefile.SH +++ b/mcon/Makefile.SH @@ -63,7 +63,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 44 2010-11-28 19:03:51Z rmanfredi $ +# $X-Id: Jmakefile 48 2010-11-28 23:05:09Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # diff --git a/pat/Makefile.SH b/pat/Makefile.SH index 9e3b961..8fbb905 100755 --- a/pat/Makefile.SH +++ b/pat/Makefile.SH @@ -58,7 +58,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 9 2006-08-25 22:31:50Z rmanfredi $ +# $X-Id: Jmakefile 48 2010-11-28 23:05:09Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # -- cgit v1.2.3 From 3aa6dc39faea413a5a66078f9d2e29783abefa41 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 28 Nov 2010 23:08:52 +0000 Subject: Regenerated. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@50 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 65 ++++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 35 insertions(+), 30 deletions(-) diff --git a/Configure b/Configure index b6ed02b..a43c6ec 100755 --- a/Configure +++ b/Configure @@ -16,9 +16,9 @@ # The dist package (which contains metaconfig) is available via SVN: # svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist -# $Id: Head.U 35 2010-11-27 14:04:55Z rmanfredi $ +# $Id: Head.U 41 2010-11-28 00:21:26Z rmanfredi $ # -# Generated on Sat Nov 27 15:09:44 CET 2010 [metaconfig 3.5-34] +# Generated on Mon Nov 29 00:07:52 CET 2010 [metaconfig 3.5-49] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-49." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -1037,7 +1038,6 @@ fi rm -f missing x?? : Find the appropriate value for a newline for tr -echo " " if test -n "$DJGPP"; then trnl='\012' fi @@ -1063,8 +1063,6 @@ $me: Fatal Error: cannot figure out how to translate newlines with 'tr'. EOM exit 1 -else - echo "We'll use '$trnl' to transliterate a newline." fi : compute the number of columns on the terminal for proper question formatting @@ -2473,6 +2471,7 @@ while test "$type"; do case "$ansexp" in /*) value="$ansexp" ;; [a-zA-Z]:/*) value="$ansexp" ;; + [a-zA-Z]:\\*) value="$ansexp" ;; *) redo=true case "$already" in @@ -2859,10 +2858,12 @@ echo exit 1 >os2 echo exit 1 >gnu echo exit 1 >linux echo exit 1 >dos +echo exit 1 >windows d_bsd="$undef" d_linux="$undef" d_dos="$undef" d_os2="$undef" +d_windows="$undef" $cat /usr/include/signal.h /usr/include/sys/signal.h >foo 2>/dev/null if test -f /osf_boot || $contains 'OSF/1' /usr/include/ctype.h >/dev/null 2>&1 then @@ -2917,6 +2918,18 @@ EOI d_eunice="$undef" ;; esac +if test -d c:/.; then + case "X${MACHTYPE:-nonesuchmach}" in + *cygwin) echo " "; echo "Hah!... you're running under Cygwin!";; + *msys) echo " "; echo "Hah!... you're running under MinGW!";; + esac + case "X${MACHTYPE:-nonesuchmach}" in + *cygwin|*msys) + echo exit 0 >windows + d_windows="$define" + ;; + esac +fi case "$p_" in :) ;; *) @@ -2924,10 +2937,6 @@ case "$p_" in I have the feeling something is not exactly right, however...don't tell me... EOI if test -n "$DJGPP"; then - case "X${MACHTYPE:-nonesuchmach}" in - cygwin) echo "hah!... you're running under Cygwin!";; - *) echo "got it... you're running DOS with DJGPP!";; - esac echo exit 0 >dos d_dos="$define" else @@ -2961,14 +2970,13 @@ else echo "Nor is it Venix..." fi fi -chmod +x bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux -$eunicefix bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux +chmod +x bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux windows +$eunicefix bsd usg v7 osf1 eunice xenix venix dos os2 gnu linux windows $rm -f foo : What should the include directory be ? echo " " $echo $n "Hmm... $c" -dflt='/usr/include' incpath='' mips_type='' if $test -f /bin/mips && /bin/mips; then @@ -2987,29 +2995,25 @@ EOCP fi $rm -f usr.c usr.out echo "and you're compiling with the $mips_type compiler and libraries." - xxx_prompt=y echo "exit 0" >mips else echo "Doesn't look like a MIPS system." - xxx_prompt=n echo "exit 1" >mips fi chmod +x mips $eunicefix mips + +: What should the include directory be ? +echo " " +dflt='/usr/include' case "$usrinc" in -'') ;; +'') dflt="$incpath/usr/include";; *) dflt="$usrinc";; esac -case "$xxx_prompt" in -y) fn=d/ - echo " " - rp='Where are the include files you want to use?' - . ./getfile - usrinc="$ans" - ;; -*) usrinc="$dflt" - ;; -esac +fn=d/ +rp='Where are the include files you want to use?' +. ./getfile +usrinc="$ans" : see if we have to deal with yellow pages, now NIS. if $test -d /usr/etc/yp || $test -d /etc/yp || $test -d /usr/lib/yp; then @@ -4417,6 +4421,7 @@ d_os2='$d_os2' d_passnames='$d_passnames' d_portable='$d_portable' d_usgnames='$d_usgnames' +d_windows='$d_windows' d_xenix='$d_xenix' date='$date' defeditor='$defeditor' @@ -4549,7 +4554,7 @@ $test -f $src/patchlevel.h && \ awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh $test -f $src/revision.h && \ sed -ne 's/^#define \([A-Za-z0-9_]*\) ".*: \([0-9]*\).*"/\1=\2/p' \ - < revision.h >>config.sh + < $src/revision.h >>config.sh echo "CONFIG=true" >>config.sh : propagate old symbols -- cgit v1.2.3 From b63524247d56c088567f0ada07b1d84713d482a7 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 11 Dec 2010 14:50:22 +0000 Subject: Forgot to commit that unit when gtk-gnutella units were moved over. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@51 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_gettext.U | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 mcon/U/d_gettext.U diff --git a/MANIFEST b/MANIFEST index fad70fb..e45959e 100644 --- a/MANIFEST +++ b/MANIFEST @@ -236,6 +236,7 @@ mcon/U/d_getppid.U Do we have getppid()? mcon/U/d_getprior.U Do we have getpriority()? mcon/U/d_getpwent.U How is passwd info gotten? mcon/U/d_gettext.U Checks whether gettext() is available +mcon/U/d_gettext.U Do we have gettext()? mcon/U/d_getuid.U Do we have getuid()? mcon/U/d_getwd.U Do we have getwd()? mcon/U/d_gnugettext.U Do we have GNU gettext()? diff --git a/mcon/U/d_gettext.U b/mcon/U/d_gettext.U new file mode 100644 index 0000000..faea913 --- /dev/null +++ b/mcon/U/d_gettext.U @@ -0,0 +1,37 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_gettext: Trylink cat +?MAKE: -pick add $@ %< +?S:d_gettext: +?S: This variable conditionally defines the HAS_GETTEXT symbol, which +?S: indicates to the C program that the gettext() routine is available. +?S:. +?C:HAS_GETTEXT: +?C: This symbol, if defined, indicates that the gettext routine is +?C: available. +?C:. +?H:#$d_gettext HAS_GETTEXT /**/ +?H:. +?LINT:set d_gettext +: see if gettext exists +$cat >try.c < +int main(void) +{ + static char ret; + ret |= *gettext("msgid"); + return ret ? 0 : 1; +} +EOC +cyn=gettext +set d_gettext -lintl +eval $trylink + -- cgit v1.2.3 From 2fa273943dae42d5331749fe3473a7c9e00a1b2e Mon Sep 17 00:00:00 2001 From: cbiere Date: Sat, 11 Dec 2010 14:58:04 +0000 Subject: Added dist unit for detecting WSAPoll(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@52 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_WSAPoll.U | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 mcon/U/d_WSAPoll.U diff --git a/mcon/U/d_WSAPoll.U b/mcon/U/d_WSAPoll.U new file mode 100644 index 0000000..c7e4a03 --- /dev/null +++ b/mcon/U/d_WSAPoll.U @@ -0,0 +1,49 @@ +?RCS: $Id: d_poll.U 40 2010-11-27 20:54:48Z rmanfredi $ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_WSAPoll: Trylink cat +?MAKE: -pick add $@ %< +?S:d_WSAPoll: +?S: This variable conditionally defines the HAS_WSAPOLL symbol, which +?S: indicates to the C program that the WSAPoll() routine is available +?S: to poll active file descriptors. +?S:. +?C:HAS_WSAPOLL : +?C: This symbol, if defined, indicates that the WSAPoll() routine is +?C: available to poll active file descriptors. +?C:. +?H:#$d_WSAPoll HAS_WSAPOLL /**/ +?H:. +?LINT:set d_WSAPoll +: see if WSAPoll exists +$cat >try.c < +#include +int main(void) +{ + static int ret, timeout; + static unsigned n; + static struct pollfd pfd; + pfd.fd |= 1; + pfd.revents |= 1; + pfd.events |= POLLIN; + pfd.events |= POLLOUT; + pfd.events |= POLLPRI; + pfd.events |= POLLERR; + pfd.events |= POLLHUP; + pfd.events |= POLLNVAL; + ret |= WSAPoll(&pfd, n, timeout); + return ret ? 0 : 1; +} +EOC +cyn=WSAPoll +set d_WSAPoll +eval $trylink + -- cgit v1.2.3 From c98e05a8208426eb74ce6596c48b982647a84fa3 Mon Sep 17 00:00:00 2001 From: cbiere Date: Sat, 11 Dec 2010 15:15:34 +0000 Subject: Added dist unit to detect presence of Winsock2.h header file. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@53 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/i_winsock2.U | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 mcon/U/i_winsock2.U diff --git a/mcon/U/i_winsock2.U b/mcon/U/i_winsock2.U new file mode 100644 index 0000000..6071b73 --- /dev/null +++ b/mcon/U/i_winsock2.U @@ -0,0 +1,27 @@ +?RCS: $Id: i_limits.U 1 2006-08-24 12:32:52Z rmanfredi $ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_winsock2: Inhdr +?MAKE: -pick add $@ %< +?S:i_winsock2: +?S: This variable conditionally defines the I_WINSOCK2 symbol, and indicates +?S: whether a C program may include . +?S:. +?C:I_WINSOCK2: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_winsock2 I_WINSOCK2 /**/ +?H:. +?LINT:set i_winsock2 +: see if this is a winsock2.h system +set winsock2.h i_winsock2 +eval $inhdr + -- cgit v1.2.3 From 11c8b60db484e7333af4be672d5e3e0a7c26b6b5 Mon Sep 17 00:00:00 2001 From: cbiere Date: Sat, 11 Dec 2010 15:46:39 +0000 Subject: Check for presence of sys/select.h before including it. Check for presence of Winsock2.h when using select(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@54 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_select.U | 10 ++++++++-- mcon/U/selecttype.U | 6 +++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/mcon/U/d_select.U b/mcon/U/d_select.U index 9a158c0..0cf4c9f 100644 --- a/mcon/U/d_select.U +++ b/mcon/U/d_select.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:02 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_select: Trylink cat i_unistd i_systypes +?MAKE:d_select: Trylink cat i_unistd i_systypes i_sysselct i_winsock2 ?MAKE: -pick add $@ %< ?S:d_select: ?S: This variable conditionally defines HAS_SELECT if select() is @@ -31,6 +31,8 @@ $cat >try.c < @@ -38,8 +40,12 @@ $cat >try.c < #endif -?X: This is the new standard +#ifdef I_SYS_SELECT #include +#endif +#ifdef I_WINSOCK2 +#include +#endif int main(void) { static int ret, n; diff --git a/mcon/U/selecttype.U b/mcon/U/selecttype.U index 4b1eefe..1debbc1 100644 --- a/mcon/U/selecttype.U +++ b/mcon/U/selecttype.U @@ -21,7 +21,7 @@ ?RCS: patch30: created by ADO ?RCS: ?MAKE:selecttype: cat +cc +ccflags rm Oldconfig Myread \ - d_fd_set d_select d_socket i_systime i_sysselct + d_fd_set d_select d_socket i_systime i_sysselct i_winsock2 ?MAKE: -pick add $@ %< ?S:selecttype: ?S: This variable holds the type used for the 2nd, 3rd, and 4th @@ -67,6 +67,7 @@ EOM $cat >try.c < #ifdef HAS_SOCKET @@ -78,6 +79,9 @@ EOM #ifdef I_SYS_SELECT #include #endif +#ifdef I_WINSOCK2 +#include +#endif int main() { int width; -- cgit v1.2.3 From d1e447541c7a6c94d9e3a523a0005fda77aa5867 Mon Sep 17 00:00:00 2001 From: cbiere Date: Sat, 11 Dec 2010 16:41:39 +0000 Subject: Must link against Ws2_32.dll on Windows for select(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@55 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_select.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_select.U b/mcon/U/d_select.U index 0cf4c9f..e0147b0 100644 --- a/mcon/U/d_select.U +++ b/mcon/U/d_select.U @@ -56,6 +56,6 @@ int main(void) } EOC cyn=select -set d_select +set d_select '-dWs_32' eval $trylink -- cgit v1.2.3 From ef1ed4bd13e61d85426eba5e4bc6c6009fee6587 Mon Sep 17 00:00:00 2001 From: cbiere Date: Sat, 11 Dec 2010 18:32:35 +0000 Subject: Fixed linker flag. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@56 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_select.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_select.U b/mcon/U/d_select.U index e0147b0..130998d 100644 --- a/mcon/U/d_select.U +++ b/mcon/U/d_select.U @@ -56,6 +56,6 @@ int main(void) } EOC cyn=select -set d_select '-dWs_32' +set d_select '-lWs_32' eval $trylink -- cgit v1.2.3 From 47e243141e71a76fbcc8b5729dbf31641f367689 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 11 Dec 2010 23:44:52 +0000 Subject: Try to improve tests for socket-related functions on Windows. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@57 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 6 +++++- mcon/U/d_fd_set.U | 5 ++++- mcon/U/d_getaddrinfo.U | 23 +++++++++++++++++++---- mcon/U/d_iptos.U | 29 ++++++++++++++++++++++------- mcon/U/d_ipv6.U | 13 ++++++++++--- mcon/U/d_msg_flags.U | 17 ++++++++++++++++- mcon/U/d_select.U | 2 +- mcon/U/d_sockaddr_in_sin_len.U | 14 ++++++++++++-- mcon/U/d_socket.U | 9 ++++++++- mcon/U/i_mswsock.U | 27 +++++++++++++++++++++++++++ mcon/U/i_ws2tcpip.U | 27 +++++++++++++++++++++++++++ mcon/U/selecttype.U | 5 ++++- 12 files changed, 155 insertions(+), 22 deletions(-) create mode 100644 mcon/U/i_mswsock.U create mode 100644 mcon/U/i_ws2tcpip.U diff --git a/MANIFEST b/MANIFEST index e45959e..4d51668 100644 --- a/MANIFEST +++ b/MANIFEST @@ -161,6 +161,7 @@ mcon/U/d_NOFILE.U Maximum # of file descriptors mcon/U/d_NeWS.U Old NeWS stuff mcon/U/d_PORTAR.U Do we know about portable archives? mcon/U/d_SHM_MAC.U SHMLBA macro stuff +mcon/U/d_WSAPoll.U Do we have WSAPoll()? mcon/U/d_access.U Do we have access()? mcon/U/d_alarm.U Do we have alarm()? mcon/U/d_arc4random.U Do we have arc4random()? @@ -170,7 +171,7 @@ mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? -mcon/U/d_built_popcount.U Is __builtin_popcount() available? +mcon/U/d_built_popcount.U Is __builtin_popcount() available? mcon/U/d_byacc.U Is byacc available? mcon/U/d_bzero.U Do we have bzero() or memset()? mcon/U/d_casti32.U Can the compiler cast large flots to 32-bit ints? @@ -465,6 +466,7 @@ mcon/U/i_locale.U Shall we include ? mcon/U/i_malloc.U Shall we include ? mcon/U/i_math.U Shall we include ? mcon/U/i_memory.U Shall we include ? +mcon/U/i_mswsock.U Shall we include ? mcon/U/i_ndbm.U Shall we include ? mcon/U/i_netdb.U Shall we include ? mcon/U/i_neterrno.U Shall we include ? @@ -510,6 +512,8 @@ mcon/U/i_values.U Shall we include mcon/U/i_varhdr.U Choose between and mcon/U/i_vfork.U Include ? mcon/U/i_whoami.U Include ? +mcon/U/i_winsock2.U Shall we include ? +mcon/U/i_ws2tcpip.U Shall we include ? mcon/U/i_zlib.U Shall we include ? mcon/U/inc.U Where to put public include files? mcon/U/install.U Look for a BSD-compatible install diff --git a/mcon/U/d_fd_set.U b/mcon/U/d_fd_set.U index 8e13de2..412ebd8 100644 --- a/mcon/U/d_fd_set.U +++ b/mcon/U/d_fd_set.U @@ -22,7 +22,7 @@ ?RCS: Baseline for dist 3.0 netwide release. ?RCS: ?MAKE:d_fd_set d_fd_macros d_fds_bits: cat +cc +ccflags rm Oldconfig \ - d_socket i_systime i_sysselct + d_socket i_systime i_sysselct i_syssock ?MAKE: -pick add $@ %< ?S:d_fd_set: ?S: This variable contains the eventual value of the HAS_FD_SET symbol, @@ -72,10 +72,13 @@ $cat >fd_set.c < #ifdef HAS_SOCKET +#ifdef I_SYS_SOCKET #include /* Might include */ #endif +#endif #ifdef I_SYS_TIME #include #endif diff --git a/mcon/U/d_getaddrinfo.U b/mcon/U/d_getaddrinfo.U index 3f2f3f2..5e492fb 100644 --- a/mcon/U/d_getaddrinfo.U +++ b/mcon/U/d_getaddrinfo.U @@ -8,7 +8,8 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_getaddrinfo: Trylink cat i_arpainet i_netdb +?MAKE:d_getaddrinfo: Trylink cat i_arpainet i_netdb i_syssock \ + i_winsock2 i_ws2tcpip i_niin ?MAKE: -pick add $@ %< ?S:d_getaddrinfo: ?S: This variable conditionally defines the HAS_GETADDRINFO symbol, which @@ -22,17 +23,31 @@ ?LINT: set d_getaddrinfo : can we use getaddrinfo? $cat >try.c < +#ifdef I_SYS_SOCKET #include +#endif +#ifdef I_NETINET_IN #include -#$i_arpainet I_ARPA_INET +#endif #ifdef I_ARPA_INET #include #endif -#$i_netdb I_NETDB #ifdef I_NETDB #include #endif +#ifdef I_WINSOCK2 +#include +#endif +#ifdef I_WS2TCPIP +#include +#endif int main(void) { struct addrinfo hints, *res; @@ -58,6 +73,6 @@ int main(void) } EOC cyn=getaddrinfo -set d_getaddrinfo +set d_getaddrinfo '-lWs2_32' eval $trylink diff --git a/mcon/U/d_iptos.U b/mcon/U/d_iptos.U index 73ff978..715c76e 100644 --- a/mcon/U/d_iptos.U +++ b/mcon/U/d_iptos.U @@ -9,7 +9,7 @@ ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_iptos: cat rm contains cppstdin cppflags cppminus \ - i_niin i_sysin i_niip test Setvar + i_niin i_sysin i_niip i_syssock i_winsock2 i_ws2tcpip test Setvar ?MAKE: -pick add $@ %< ?S:d_iptos: ?S: This variable conditionally defines the USE_IP_TOS symbol, which @@ -35,11 +35,23 @@ case "$i_niin" in *) case "$i_sysin" in "$define") inh=sys/in.h;; + *) + case "$i_ws2tcpip" in + "$define") inh=Ws2tcpip.h;; + esac + ;; esac ;; esac $cat >iptos < +#endif +#ifdef I_WINSOCK2 +#include +#endif #include <$inh> #if defined(IP_TOS) && defined(IPTOS_LOWDELAY) && defined(IPTOS_THROUGHPUT) YES @@ -52,12 +64,15 @@ if $contains 'YES' iptos.h >/dev/null 2>&1; then echo "You have IP TOS support in <$inh>." >&4 elif $test "x$i_niip" = "x$define"; then $cat >iptos < - #include <$inh> - #include - #if defined(IP_TOS) && defined(IPTOS_LOWDELAY) && defined(IPTOS_THROUGHPUT) - YES - #endif +#$i_syssock I_SYS_SOCKET +#ifdef I_SYS_SOCKET +#include +#endif +#include <$inh> +#include +#if defined(IP_TOS) && defined(IPTOS_LOWDELAY) && defined(IPTOS_THROUGHPUT) +YES +#endif EOM $cppstdin $cppflags $cppminus iptos.h 2>/dev/null if $contains 'YES' iptos.h >/dev/null 2>&1; then diff --git a/mcon/U/d_ipv6.U b/mcon/U/d_ipv6.U index d84f346..14020cd 100644 --- a/mcon/U/d_ipv6.U +++ b/mcon/U/d_ipv6.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_ipv6: Trylink cat i_arpainet i_netdb +?MAKE:d_ipv6: Trylink cat i_arpainet i_netdb i_syssock i_niin i_winsock2 ?MAKE: -pick add $@ %< ?S:d_ipv6: ?S: This variable conditionally defines HAS_IPV6. @@ -26,14 +26,21 @@ case "$d_ipv6" in ;; *) $cat >try.c < +#ifdef I_SYS_SOCKET #include +#endif +#ifdef I_NETINET_IN #include -#$i_arpainet I_ARPA_INET +#endif #ifdef I_ARPA_INET #include #endif -#$i_netdb I_NETDB #ifdef I_NETDB #include #endif diff --git a/mcon/U/d_msg_flags.U b/mcon/U/d_msg_flags.U index 299d75f..77d8d63 100644 --- a/mcon/U/d_msg_flags.U +++ b/mcon/U/d_msg_flags.U @@ -8,7 +8,8 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_msghdr_msg_flags: Trylink cat +?MAKE:d_msghdr_msg_flags: Trylink cat i_systypes i_sysselct \ + i_winsock2 i_mswsock ?MAKE: -pick add $@ %< ?S:d_msghdr_msg_flags: ?S: This variable conditionally defines the HAS_MSGHDR_MSG_FLAGS symbol, @@ -24,8 +25,22 @@ ?LINT:set d_msghdr_msg_flags : check for msg_flags in struct msghdr $cat >try.c < +#endif +#ifdef I_SYS_SOCKET #include +#endif +#ifdef I_WINSOCK2 +#include +#endif +#ifdef I_MSWSOCK +#include +#endif int main(void) { struct msghdr msg; diff --git a/mcon/U/d_select.U b/mcon/U/d_select.U index 130998d..372379b 100644 --- a/mcon/U/d_select.U +++ b/mcon/U/d_select.U @@ -56,6 +56,6 @@ int main(void) } EOC cyn=select -set d_select '-lWs_32' +set d_select '-lWs2_32' eval $trylink diff --git a/mcon/U/d_sockaddr_in_sin_len.U b/mcon/U/d_sockaddr_in_sin_len.U index 443f97e..763cff7 100644 --- a/mcon/U/d_sockaddr_in_sin_len.U +++ b/mcon/U/d_sockaddr_in_sin_len.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_sockaddr_in_sin_len: Trylink cat i_arpainet +?MAKE:d_sockaddr_in_sin_len: Trylink cat i_arpainet i_syssock i_winsock2 i_niin ?MAKE: -pick add $@ %< ?S:d_sockaddr_in_sin_len: ?S: This variable conditionally defines the HAS_SOCKADDR_IN_SIN_LEN symbol, @@ -23,13 +23,23 @@ ?LINT: set d_sockaddr_in_sin_len : does struct sockaddr_in has sin_len $cat >try.c < +#ifdef I_SYS_SOCKET #include +#endif +#ifdef I_NETINET_IN #include -#$i_arpainet I_ARPA_INET +#endif #ifdef I_ARPA_INET #include #endif +#ifdef I_WINSOCK2 +#include +#endif int main(void) { static struct sockaddr_in addr; diff --git a/mcon/U/d_socket.U b/mcon/U/d_socket.U index ff7993f..29082e3 100644 --- a/mcon/U/d_socket.U +++ b/mcon/U/d_socket.U @@ -19,7 +19,7 @@ ?RCS: Baseline for dist 3.0 netwide release. ?RCS: ?MAKE:d_socket d_oldsock d_sockpair socketlib sockethdr: contains libc \ - echo n c nm_opt nm_extract Trylink Csym _a cat + echo n c nm_opt nm_extract Trylink Csym _a cat i_syssock i_winsock2 ?MAKE: -pick add $@ %< ?S:d_socket: ?S: This variable conditionally defines HAS_SOCKET, which indicates @@ -118,7 +118,14 @@ fi @if HAS_SOCKETPAIR || d_sockpair : see if socketpair exists $cat >try.c < +#endif +#ifdef I_WINSOCK2 +#include +#endif int main(void) { static int ret, domain, type, protocol, sv[2]; diff --git a/mcon/U/i_mswsock.U b/mcon/U/i_mswsock.U new file mode 100644 index 0000000..69e6c13 --- /dev/null +++ b/mcon/U/i_mswsock.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, 2010 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_mswsock: Inhdr +?MAKE: -pick add $@ %< +?S:i_mswsock: +?S: This variable conditionally defines the I_MSWSOCK symbol, and indicates +?S: whether a C program may include . +?S:. +?C:I_MSWSOCK: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_mswsock I_MSWSOCK /**/ +?H:. +?LINT:set i_mswsock +: see if this is a mswsock.h system +set mswsock.h i_mswsock +eval $inhdr + diff --git a/mcon/U/i_ws2tcpip.U b/mcon/U/i_ws2tcpip.U new file mode 100644 index 0000000..e09cd6e --- /dev/null +++ b/mcon/U/i_ws2tcpip.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, 2010, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_ws2tcpip: Inhdr +?MAKE: -pick add $@ %< +?S:i_ws2tcpip: +?S: This variable conditionally defines the I_WS2TCPIP symbol, and indicates +?S: whether a C program may include . +?S:. +?C:I_WS2TCPIP: +?C: This symbol, if defined, indicates to the C program that it should +?C: include . +?C:. +?H:#$i_ws2tcpip I_WS2TCPIP /**/ +?H:. +?LINT:set i_ws2tcpip +: see if this is a ws2tcpip.h system +set ws2tcpip.h i_ws2tcpip +eval $inhdr + diff --git a/mcon/U/selecttype.U b/mcon/U/selecttype.U index 1debbc1..9402dad 100644 --- a/mcon/U/selecttype.U +++ b/mcon/U/selecttype.U @@ -21,7 +21,7 @@ ?RCS: patch30: created by ADO ?RCS: ?MAKE:selecttype: cat +cc +ccflags rm Oldconfig Myread \ - d_fd_set d_select d_socket i_systime i_sysselct i_winsock2 + d_fd_set d_select d_socket i_systime i_sysselct i_winsock2 i_syssock ?MAKE: -pick add $@ %< ?S:selecttype: ?S: This variable holds the type used for the 2nd, 3rd, and 4th @@ -67,12 +67,15 @@ EOM $cat >try.c < #ifdef HAS_SOCKET +#ifdef I_SYS_SOCKET #include /* Might include */ #endif +#endif #ifdef I_SYS_TIME #include #endif -- cgit v1.2.3 From 3be43d14e47dbf317c5349b4452f35bbeff791cb Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 12 Dec 2010 10:10:44 +0000 Subject: Suppress spurious compiler warnings, with gcc at least. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@58 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/voidflags.U | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/mcon/U/voidflags.U b/mcon/U/voidflags.U index 6ca70fe..f3da0b8 100644 --- a/mcon/U/voidflags.U +++ b/mcon/U/voidflags.U @@ -78,6 +78,7 @@ EOM case "$voidflags" in '') $cat >try.c <<'EOCP' +extern int doit(); #if TRY & 1 void sub() { #else @@ -85,21 +86,34 @@ sub() { #endif extern void moo(); /* function returning void */ void (*goo)(); /* ptr to func returning void */ +#if TRY & 2 + static void (*foo[10])(); +#endif #if TRY & 8 - void *hue; /* generic ptr */ + void *hue; /* generic ptr */ + char buf[] = "buf"; + int *iptr; #endif + #if TRY & 2 - void (*foo[10])(); + if (doit()) { + foo[0] = moo; + (*foo[0])(); + } #endif - #if TRY & 4 - if(goo == moo) { - exit(0); - } + if (doit()) + goo = moo; + if (goo == moo) + doit(); +#endif +#if TRY & 8 + hue = buf; + if (doit()) + iptr = hue; #endif - exit(0); + doit(); } -int main() { sub(); } EOCP ?X: This unit used to use cc -S in those tests to try to speed up things, but ?X: unfortunately, AIX 3.2 does not support this option. @@ -153,9 +167,7 @@ echo "Hmm, your compiler has some difficulty with void. Checking further..." >&4 esac ?X: Only prompt user if support does not match the level we want case "$voidflags" in -"$defvoidused") - echo "Good. I already know it supports void to the level $package wants." - ;; +"$defvoidused") ;; *) dflt="$voidflags"; test -f flags && $cat flags -- cgit v1.2.3 From 80ed788015913282d2c2880d6dcbaa542bee450c Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 12 Dec 2010 10:14:03 +0000 Subject: On Windows, define WINVER to 0x0501 before including . This makes getaddrinfo() and IPv6 visible. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@59 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_getaddrinfo.U | 6 +++++- mcon/U/d_iptos.U | 16 +++++++++++----- mcon/U/d_ipv6.U | 10 +++++++++- mcon/U/d_msg_flags.U | 6 +++++- 4 files changed, 30 insertions(+), 8 deletions(-) diff --git a/mcon/U/d_getaddrinfo.U b/mcon/U/d_getaddrinfo.U index 5e492fb..5148ec0 100644 --- a/mcon/U/d_getaddrinfo.U +++ b/mcon/U/d_getaddrinfo.U @@ -9,7 +9,7 @@ ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_getaddrinfo: Trylink cat i_arpainet i_netdb i_syssock \ - i_winsock2 i_ws2tcpip i_niin + i_winsock2 i_ws2tcpip i_niin d_windows ?MAKE: -pick add $@ %< ?S:d_getaddrinfo: ?S: This variable conditionally defines the HAS_GETADDRINFO symbol, which @@ -29,6 +29,7 @@ $cat >try.c < #ifdef I_SYS_SOCKET #include @@ -42,6 +43,9 @@ $cat >try.c < #endif +#ifdef WINDOWS_SYSTEM +#define WINVER 0x0501 +#endif #ifdef I_WINSOCK2 #include #endif diff --git a/mcon/U/d_iptos.U b/mcon/U/d_iptos.U index 715c76e..891e8e5 100644 --- a/mcon/U/d_iptos.U +++ b/mcon/U/d_iptos.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_iptos: cat rm contains cppstdin cppflags cppminus \ +?MAKE:d_iptos: cat rm contains cppstdin cppflags cppminus d_windows \ i_niin i_sysin i_niip i_syssock i_winsock2 i_ws2tcpip test Setvar ?MAKE: -pick add $@ %< ?S:d_iptos: @@ -46,9 +46,13 @@ esac $cat >iptos < #endif +#ifdef WINDOWS_SYSTEM +#define WINVER 0x0501 +#endif #ifdef I_WINSOCK2 #include #endif @@ -59,7 +63,7 @@ YES EOM $cppstdin $cppflags $cppminus iptos.h 2>/dev/null val="$undef" -if $contains 'YES' iptos.h >/dev/null 2>&1; then +if $contains YES iptos.h >/dev/null 2>&1; then val="$define" echo "You have IP TOS support in <$inh>." >&4 elif $test "x$i_niip" = "x$define"; then @@ -75,13 +79,15 @@ YES #endif EOM $cppstdin $cppflags $cppminus iptos.h 2>/dev/null - if $contains 'YES' iptos.h >/dev/null 2>&1; then + if $contains YES iptos.h >/dev/null 2>&1; then val="$define" echo "You have IP TOS support in ." >&4 - else - echo "Sorry, you seem to be lacking IP TOS support." >&4 fi fi +case "$val" in +"$define") ;; +*) echo "Sorry, you seem to be lacking IP TOS support." >&4;; +esac set d_iptos eval $setvar $rm -f iptos iptos.h diff --git a/mcon/U/d_ipv6.U b/mcon/U/d_ipv6.U index 14020cd..4d4b150 100644 --- a/mcon/U/d_ipv6.U +++ b/mcon/U/d_ipv6.U @@ -8,7 +8,8 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_ipv6: Trylink cat i_arpainet i_netdb i_syssock i_niin i_winsock2 +?MAKE:d_ipv6: Trylink cat i_arpainet i_netdb i_syssock i_niin \ + i_winsock2 i_ws2tcpip ?MAKE: -pick add $@ %< ?S:d_ipv6: ?S: This variable conditionally defines HAS_IPV6. @@ -28,6 +29,7 @@ case "$d_ipv6" in $cat >try.c < #endif +#ifdef I_WINSOCK2 +#include "Winsock2.h" +#endif +#ifdef I_WS2TCPIP +#include "Ws2tcpip.h" +#endif #define STATIC_ASSERT(x) \ do { switch (0) { case ((x) ? 1 : 0): case 0: break; } } while(0) diff --git a/mcon/U/d_msg_flags.U b/mcon/U/d_msg_flags.U index 77d8d63..6eb4752 100644 --- a/mcon/U/d_msg_flags.U +++ b/mcon/U/d_msg_flags.U @@ -9,7 +9,7 @@ ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_msghdr_msg_flags: Trylink cat i_systypes i_sysselct \ - i_winsock2 i_mswsock + i_winsock2 i_mswsock d_windows ?MAKE: -pick add $@ %< ?S:d_msghdr_msg_flags: ?S: This variable conditionally defines the HAS_MSGHDR_MSG_FLAGS symbol, @@ -29,12 +29,16 @@ $cat >try.c < #endif #ifdef I_SYS_SOCKET #include #endif +#ifdef WINDOWS_SYSTEM +#define WINVER 0x0501 +#endif #ifdef I_WINSOCK2 #include #endif -- cgit v1.2.3 From 850d37c04929177ab9c1397e82565b78cf576509 Mon Sep 17 00:00:00 2001 From: cbiere Date: Sun, 12 Dec 2010 12:16:37 +0000 Subject: Fixed bug preventing including sys/socket.h inclusion and thus detection. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@60 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_msg_flags.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_msg_flags.U b/mcon/U/d_msg_flags.U index 6eb4752..be154ed 100644 --- a/mcon/U/d_msg_flags.U +++ b/mcon/U/d_msg_flags.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_msghdr_msg_flags: Trylink cat i_systypes i_sysselct \ +?MAKE:d_msghdr_msg_flags: Trylink cat i_systypes i_sysselct i_syssock \ i_winsock2 i_mswsock d_windows ?MAKE: -pick add $@ %< ?S:d_msghdr_msg_flags: @@ -27,6 +27,7 @@ $cat >try.c < Date: Sun, 12 Dec 2010 12:17:42 +0000 Subject: Added dist unit for detecting recvmsg(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@61 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_recvmsg.U | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 mcon/U/d_recvmsg.U diff --git a/mcon/U/d_recvmsg.U b/mcon/U/d_recvmsg.U new file mode 100644 index 0000000..39e82bc --- /dev/null +++ b/mcon/U/d_recvmsg.U @@ -0,0 +1,70 @@ +?RCS: $Id: d_msg_flags.U 59 2010-12-12 10:14:03Z rmanfredi $ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_recvmsg: Trylink cat i_systypes i_sysselct i_syssock \ + i_winsock2 i_mswsock d_windows +?MAKE: -pick add $@ %< +?S:d_recvmsg: +?S: This variable conditionally defines the HAS_RECVMSG symbol, +?S: which indicates to the C program that the recvmsg() function is +?S: available. +?S:. +?C:HAS_RECVMSG: +?C: This symbol, if defined, indicates that the recvmsg() function +?C: is available. +?C:. +?H:#$d_recvmsg HAS_RECVMSG /**/ +?H:. +?LINT:set d_recvmsg +: check for recvmsg function +$cat >try.c < +#endif +#ifdef I_SYS_SOCKET +#include +#endif +#ifdef WINDOWS_SYSTEM +#define WINVER 0x0501 +#endif +#ifdef I_WINSOCK2 +#include +#endif +#ifdef I_MSWSOCK +#include +#endif +int main(void) +{ + static struct msghdr msg; + int ret, fd, flags; + + fd = 1; + flags = 1; + msg.msg_name = (void *) 0; + msg.msg_namelen |= 1; + msg.msg_iov = (void *) 0; + msg.msg_iovlen |= 1; + /* msg.msg_flags is intentionally excluded, see other unit */ + msg.msg_control = (void *) 0; + msg.msg_controllen |= 1; + ret = recvmsg(fd, &msg, flags); + return ret ? 0 : 1; +} +EOC +cyn='recvmsg' +set d_recvmsg +eval $trylink + -- cgit v1.2.3 From 3e010a4a9be7345780ebc791bbfd39c8b8cbf9dd Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 13 Dec 2010 23:53:33 +0000 Subject: Added d_recvmsg.U. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@62 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + 1 file changed, 1 insertion(+) diff --git a/MANIFEST b/MANIFEST index 4d51668..a1e110b 100644 --- a/MANIFEST +++ b/MANIFEST @@ -320,6 +320,7 @@ mcon/U/d_raster.U Is this a Raster Tech machine? mcon/U/d_rdchk.U Is rdchk() there to check for input? mcon/U/d_readdir.U Do we have readdir()? mcon/U/d_readlink.U Do we have readlink()? +mcon/U/d_recvmsg.U Do we have recvmsg()? mcon/U/d_regcmp.U Do we have regcmp()? mcon/U/d_regparm.U Can we use __attribute__((__regparm__(n)))? mcon/U/d_rename.U Do we have rename()? -- cgit v1.2.3 From d0b3b89301ddb451e56c0efa7f72c650f2c4d8be Mon Sep 17 00:00:00 2001 From: cbiere Date: Thu, 23 Dec 2010 02:06:16 +0000 Subject: Removed dysfunctional unit for WSAPoll() detection. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@63 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 - mcon/U/d_WSAPoll.U | 49 ------------------------------------------------- 2 files changed, 50 deletions(-) delete mode 100644 mcon/U/d_WSAPoll.U diff --git a/MANIFEST b/MANIFEST index a1e110b..afd5ea6 100644 --- a/MANIFEST +++ b/MANIFEST @@ -161,7 +161,6 @@ mcon/U/d_NOFILE.U Maximum # of file descriptors mcon/U/d_NeWS.U Old NeWS stuff mcon/U/d_PORTAR.U Do we know about portable archives? mcon/U/d_SHM_MAC.U SHMLBA macro stuff -mcon/U/d_WSAPoll.U Do we have WSAPoll()? mcon/U/d_access.U Do we have access()? mcon/U/d_alarm.U Do we have alarm()? mcon/U/d_arc4random.U Do we have arc4random()? diff --git a/mcon/U/d_WSAPoll.U b/mcon/U/d_WSAPoll.U deleted file mode 100644 index c7e4a03..0000000 --- a/mcon/U/d_WSAPoll.U +++ /dev/null @@ -1,49 +0,0 @@ -?RCS: $Id: d_poll.U 40 2010-11-27 20:54:48Z rmanfredi $ -?RCS: -?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, -?RCS: as specified in the README file that comes with the distribution. -?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root -?RCS: of the source tree for dist 4.0. -?RCS: -?MAKE:d_WSAPoll: Trylink cat -?MAKE: -pick add $@ %< -?S:d_WSAPoll: -?S: This variable conditionally defines the HAS_WSAPOLL symbol, which -?S: indicates to the C program that the WSAPoll() routine is available -?S: to poll active file descriptors. -?S:. -?C:HAS_WSAPOLL : -?C: This symbol, if defined, indicates that the WSAPoll() routine is -?C: available to poll active file descriptors. -?C:. -?H:#$d_WSAPoll HAS_WSAPOLL /**/ -?H:. -?LINT:set d_WSAPoll -: see if WSAPoll exists -$cat >try.c < -#include -int main(void) -{ - static int ret, timeout; - static unsigned n; - static struct pollfd pfd; - pfd.fd |= 1; - pfd.revents |= 1; - pfd.events |= POLLIN; - pfd.events |= POLLOUT; - pfd.events |= POLLPRI; - pfd.events |= POLLERR; - pfd.events |= POLLHUP; - pfd.events |= POLLNVAL; - ret |= WSAPoll(&pfd, n, timeout); - return ret ? 0 : 1; -} -EOC -cyn=WSAPoll -set d_WSAPoll -eval $trylink - -- cgit v1.2.3 From 8a7e11663f43be976ef9424bb60bc7d35ae9e753 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 1 Jan 2011 21:57:17 +0000 Subject: Added AllTargetProgram() for programs to make sure we take care of any ".exe". git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@64 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index 43bc10a..671bb18 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -77,6 +77,18 @@ all:: depends @!\ local_realclean:: @@\ $(RM) depends +/* + * AllTargetProgram: + * Generate rules to build necessary things during make all. + * This target is specific to executable. Use AllTarget() for + * other type of files. + */ +#define AllTargetProgram(program) @!\ +all:: program @!\ + @!\ +local_realclean:: @@\ + $(RM) program^^$(_EXE) + /* * RemoveTargetProgram: * This is used in some other macros in order to remove the target @@ -85,7 +97,7 @@ local_realclean:: @@\ * used *inside* building rules. */ #define RemoveTargetProgram(program) \ - $(RM) program @@\ + $(RM) program^^$(_EXE) @@\ if test -f program^^^$(_EXE); then \ @@\ $(MV) program^^^$(_EXE) program^^~^^^$(_EXE); fi @@ -99,7 +111,7 @@ local_realclean:: @@\ ++OBJECTS objects @!\ ++SOURCES sources @!\ NormalObjectRule() @!\ -AllTarget(program) @!\ +AllTargetProgram(program) @!\ @!\ program: objects @@\ RemoveTargetProgram($@) @@\ @@ -136,7 +148,7 @@ NormalProgramTarget(program,program.c,program.o) ++OBJECTS $(OBJS) @!\ ++SOURCES $(SRCS) @!\ NormalObjectRule() @!\ -AllTarget(program) @!\ +AllTargetProgram(program) @!\ @!\ program: $(OBJS) @@\ RemoveTargetProgram($@) @@\ @@ -160,7 +172,7 @@ LintTarget() ++OBJECTS $(OBJS1) @!\ ++SOURCES $(SRCS1) @!\ NormalObjectRule() @!\ -AllTarget(program) @!\ +AllTargetProgram(program) @!\ @!\ program: $(OBJS1) @@\ RemoveTargetProgram($@) @@\ @@ -184,7 +196,7 @@ LintTarget() ++OBJECTS $(OBJS2) @!\ ++SOURCES $(SRCS2) @!\ NormalObjectRule() @!\ -AllTarget(program) @!\ +AllTargetProgram(program) @!\ @!\ program: $(OBJS2) @@\ RemoveTargetProgram($@) @@\ @@ -205,7 +217,7 @@ InstallManPage(program,$(MANSRC)) ++OBJECTS $(OBJS3) @!\ ++SOURCES $(SRCS3) @!\ NormalObjectRule() @!\ -AllTarget(program) @!\ +AllTargetProgram(program) @!\ @!\ program: $(OBJS3) @@\ RemoveTargetProgram($@) @@\ -- cgit v1.2.3 From 0114f0c3d6c3b72a2fe3fd03f7b7475376a00c12 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 1 Jan 2011 22:01:00 +0000 Subject: Added check for backtrace(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@65 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_backtrace.U | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 mcon/U/d_backtrace.U diff --git a/MANIFEST b/MANIFEST index afd5ea6..b43f040 100644 --- a/MANIFEST +++ b/MANIFEST @@ -165,6 +165,7 @@ mcon/U/d_access.U Do we have access()? mcon/U/d_alarm.U Do we have alarm()? mcon/U/d_arc4random.U Do we have arc4random()? mcon/U/d_attribut.U Checks wether your cc groks __attribute__ +mcon/U/d_backtrace.U Do we have backtrace()? mcon/U/d_bcmp.U Do we have bcmp() or memcmp()? mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? diff --git a/mcon/U/d_backtrace.U b/mcon/U/d_backtrace.U new file mode 100644 index 0000000..5f90e80 --- /dev/null +++ b/mcon/U/d_backtrace.U @@ -0,0 +1,41 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_semget.U,v $ +?RCS: +?MAKE:d_backtrace: Trylink cat +?MAKE: -pick add $@ %< +?S:d_backtrace: +?S: This variable conditionally defines the HAS_BACKTRACE symbol, which +?S: indicates to the C program that the backtrace() routine is available +?S: to get a stack trace. +?S:. +?C:HAS_BACKTRACE: +?C: This symbol, if defined, indicates that the backtrace() routine is +?C: available to get a stack trace. The header must be +?C: included to use this routine. +?C:. +?H:#$d_backtrace HAS_BACKTRACE /**/ +?H:. +?LINT:set d_backtrace +: see if backtrace exists +$cat >try.c < +int main(void) +{ + void *buf[2]; + int ret = backtrace(buf, 2); + return ret ? 0 : 1; +} +EOC +cyn=backtrace +set d_backtrace +eval $trylink + -- cgit v1.2.3 From a6477167d06f57ef3928f80692032a42d757bae8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 3 Jan 2011 10:48:33 +0000 Subject: Added check for struct sockaddr_un. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@66 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_sockaddr_un.U | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 mcon/U/d_sockaddr_un.U diff --git a/MANIFEST b/MANIFEST index b43f040..5ca9abb 100644 --- a/MANIFEST +++ b/MANIFEST @@ -370,6 +370,7 @@ mcon/U/d_sigsetmk.U Do we have sigsetmask()? mcon/U/d_sigvec.U BSD reliable signals supported? mcon/U/d_sjis2jis.U Do we have sjis2jis()? mcon/U/d_sockaddr_in_sin_len.U Is there a sin_len within struct sockaddr_in? +mcon/U/d_sockaddr_un.U Is struct sockaddr_un available? mcon/U/d_socker_get.U Has socker_get() to listen to privileged ports? mcon/U/d_socket.U BSD socket interface supported? mcon/U/d_speedopt.U Optimize speed vs memory? diff --git a/mcon/U/d_sockaddr_un.U b/mcon/U/d_sockaddr_un.U new file mode 100644 index 0000000..32a252e --- /dev/null +++ b/mcon/U/d_sockaddr_un.U @@ -0,0 +1,58 @@ +?RCS: $Id: d_sockaddr_in_sin_len.U 57 2010-12-11 23:44:52Z rmanfredi $ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sockaddr_un: Trylink cat i_arpainet i_syssock i_winsock2 i_niin i_sysun +?MAKE: -pick add $@ %< +?S:d_sockaddr_un: +?S: This variable conditionally defines the HAS_SOCKADDR_UN symbol, +?S: indicates to the C program that struct sockaddr_un is available to +?S: create file sockets. +?S:. +?C:HAS_SOCKADDR_UN: +?C: This symbol is defined if struct sockaddr_un exists, allowing the +?C: creation of file sockets. +?C:. +?H:#$d_sockaddr_un HAS_SOCKADDR_UN +?H:. +?LINT: set d_sockaddr_un +: does struct sockaddr_un exists? +$cat >try.c < +#ifdef I_SYS_SOCKET +#include +#endif +#ifdef I_SYS_UN +#include +#endif +#ifdef I_NETINET_IN +#include +#endif +#ifdef I_ARPA_INET +#include +#endif +#ifdef I_WINSOCK2 +#include +#endif +int main(void) +{ + static struct sockaddr_un addr; + addr.sun_family = AF_LOCAL; + return 0; +} +EOC +cyn="whether 'struct sockaddr_un' is available" +set d_sockaddr_un +eval $trylink + -- cgit v1.2.3 From d5b029172ce4bbbe20916c6df6c4a9b61d415ba8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 5 Jan 2011 22:53:05 +0000 Subject: Define AF_LOCAL if not already done. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@67 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_sockaddr_un.U | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mcon/U/d_sockaddr_un.U b/mcon/U/d_sockaddr_un.U index 32a252e..69747b2 100644 --- a/mcon/U/d_sockaddr_un.U +++ b/mcon/U/d_sockaddr_un.U @@ -45,6 +45,9 @@ $cat >try.c < #endif +#if !defined(AF_LOCAL) && defined(AF_UNIX) +#define AF_LOCAL AF_UNIX +#endif int main(void) { static struct sockaddr_un addr; -- cgit v1.2.3 From 74ab7bef49172bc5c781413d6790ba1458c10b01 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 9 Jan 2011 12:46:28 +0000 Subject: Allow $(NM) to be set. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@68 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.tmpl | 1 + 1 file changed, 1 insertion(+) diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index 71c14a8..83f90fb 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -104,6 +104,7 @@ DIR = $DIR ?MAKE:$make_set_make ?MKDEP:MKDEP = $mkdep \$(DPFLAGS) \$(JCPPFLAGS) -- ?MV:MV = $mv +?NM:NM = $nm ?PRIVLIB:PRIVLIB = $installprivlib ?RANLIB:RANLIB = $ranlib ?RM:RM = $rm -f -- cgit v1.2.3 From 0592971eb3dc8a7f4014e98e0d6e95ae443ef82b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 9 Jan 2011 13:57:07 +0000 Subject: Added ARCHLIB variable. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@69 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.tmpl | 1 + 1 file changed, 1 insertion(+) diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index 83f90fb..bae477b 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -81,6 +81,7 @@ DIR = $DIR ;# Parameters set by Configure -- edit config.sh if changes are needed ?AR:AR = ar rc /* FIXME */ +?ARCHLIB:ARCHLIB = $installarchlib ?BINDIR:BINDIR = $installbin ?CC:CC = $cc ?CHMOD:CHMOD = $chmod -- cgit v1.2.3 From b1d0e6c5692fb5e8e1dfe49070877696078c79d7 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 9 Jan 2011 23:40:18 +0000 Subject: Added d_sigprocmask.U. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@70 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_sigprocmask.U | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 mcon/U/d_sigprocmask.U diff --git a/MANIFEST b/MANIFEST index 5ca9abb..5bdc260 100644 --- a/MANIFEST +++ b/MANIFEST @@ -365,6 +365,7 @@ mcon/U/d_sigaction.U Do we have sigaction()? mcon/U/d_sigblock.U Do we have sigblock()? mcon/U/d_sighold.U Do we have sighold()? mcon/U/d_siglist.U Do we have sys_siglist[]? +mcon/U/d_sigprocmask.U Do we have sigprocmask()? mcon/U/d_sigsetjmp.U Do we have sigsetjmp()? mcon/U/d_sigsetmk.U Do we have sigsetmask()? mcon/U/d_sigvec.U BSD reliable signals supported? diff --git a/mcon/U/d_sigprocmask.U b/mcon/U/d_sigprocmask.U new file mode 100644 index 0000000..e281c24 --- /dev/null +++ b/mcon/U/d_sigprocmask.U @@ -0,0 +1,41 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_sigprocmask.U,v $ +?RCS: Revision 3.0 1993/08/18 12:07:04 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_sigprocmask: Trylink cat +?MAKE: -pick add $@ %< +?S:d_sigprocmask: +?S: This variable conditionally defines the HAS_SIGPROCMASK symbol, which +?S: indicates to the C program that the sigprocmask() routine is available. +?S:. +?C:HAS_SIGPROCMASK: +?C: This symbol, if defined, indicates that the sigprocmask() routine is +?C: available to examine and change blocked signals. +?C:. +?H:#$d_sigprocmask HAS_SIGPROCMASK /**/ +?H:. +?LINT:set d_sigprocmask +: see if sigprocmask exists +$cat >try.c < +int main(void) +{ + sigset_t oset; + ret |= sigprocmask(SIG_BLOCK, NULL, &oset); + return ret ? 0 : 1; +} +EOC +cyn=sigprocmask +set d_sigprocmask +eval $trylink + -- cgit v1.2.3 From ed9e62bfd3b0edfd4d5b8ba065dd87db761df7e8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 9 Jan 2011 23:57:05 +0000 Subject: Fixed C code: forgot to declare "ret". git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@71 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_sigprocmask.U | 1 + 1 file changed, 1 insertion(+) diff --git a/mcon/U/d_sigprocmask.U b/mcon/U/d_sigprocmask.U index e281c24..b694d11 100644 --- a/mcon/U/d_sigprocmask.U +++ b/mcon/U/d_sigprocmask.U @@ -30,6 +30,7 @@ $cat >try.c < int main(void) { + static int ret; sigset_t oset; ret |= sigprocmask(SIG_BLOCK, NULL, &oset); return ret ? 0 : 1; -- cgit v1.2.3 From 439a9fac0c9141a1f6006530f2c952478ca2d9c5 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 10 Jan 2011 00:02:05 +0000 Subject: Avoid NULL. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@72 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_sigprocmask.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_sigprocmask.U b/mcon/U/d_sigprocmask.U index b694d11..b7d279d 100644 --- a/mcon/U/d_sigprocmask.U +++ b/mcon/U/d_sigprocmask.U @@ -32,7 +32,7 @@ int main(void) { static int ret; sigset_t oset; - ret |= sigprocmask(SIG_BLOCK, NULL, &oset); + ret |= sigprocmask(SIG_BLOCK, &oset, &oset); return ret ? 0 : 1; } EOC -- cgit v1.2.3 From c95a0be52f14cbbdbd0787f58b437297b2dcee91 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 12 Jan 2011 16:35:22 +0000 Subject: Added i_execinfo.U. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@73 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/i_execinfo.U | 27 +++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 mcon/U/i_execinfo.U diff --git a/MANIFEST b/MANIFEST index 5bdc260..f0197d5 100644 --- a/MANIFEST +++ b/MANIFEST @@ -453,6 +453,7 @@ mcon/U/i_dbm.U Shall we include ? mcon/U/i_dirent.U Shall we include mcon/U/i_dld.U Shall we include ? mcon/U/i_dlfcn.U Shall we include ? +mcon/U/i_execinfo.U Shall we include ? mcon/U/i_fcntl.U Shall we include ? mcon/U/i_float.U Shall we include ? mcon/U/i_gdbm.U Shall we include ? diff --git a/mcon/U/i_execinfo.U b/mcon/U/i_execinfo.U new file mode 100644 index 0000000..e013f7d --- /dev/null +++ b/mcon/U/i_execinfo.U @@ -0,0 +1,27 @@ +?RCS: $Id: i_execinfo.U 34 2010-11-27 11:55:39Z rmanfredi $ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_execinfo: Inhdr Trylink cat +?MAKE: -pick add $@ %< +?S:i_execinfo: +?S: This variable conditionally defines the I_EXECINFO symbol, and indicates +?S: whether a C program may include , for backtrace() support. +?S:. +?C:I_EXECINFO: +?C: This symbol, if defined, indicates to the C program that it should +?C: include for backtrace() support. +?C:. +?H:#$i_execinfo I_EXECINFO /**/ +?H:. +?LINT:set i_execinfo +: see if this is an execinfo.h system +set execinfo.h i_execinfo +eval $inhdr + -- cgit v1.2.3 From 684981d12df4e92b2422618058dd392fa2059c17 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 13 Jan 2011 20:04:13 +0000 Subject: Fixed C code to avoid compilation warning. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@74 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Signal.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/Signal.U b/mcon/U/Signal.U index 5adfda5..2990907 100644 --- a/mcon/U/Signal.U +++ b/mcon/U/Signal.U @@ -160,7 +160,7 @@ echo $xxx | $tr ' ' $trnl | $sort | $uniq | $awk ' } END { printf "#endif /* JUST_NSIG */\n"; - printf "exit(0);\n}\n"; + printf "return 0;\n}\n"; } ' >>signal.c $cat >signal.awk <<'EOP' -- cgit v1.2.3 From cabf341923238fe7dfb102274e91cb8ece376319 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 15 Jan 2011 09:29:15 +0000 Subject: Renamed filexp.U as filexp_path.U to avoid case collision with Filexp.U. Dependency cleanup in i_execinfo.U. Made d_backtrace.U depend on i_execinfo.U to conditionally include . git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@75 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 +- mcon/U/d_backtrace.U | 5 ++++- mcon/U/filexp.U | 30 ------------------------------ mcon/U/filexp_path.U | 30 ++++++++++++++++++++++++++++++ mcon/U/i_execinfo.U | 2 +- 5 files changed, 36 insertions(+), 33 deletions(-) delete mode 100644 mcon/U/filexp.U create mode 100644 mcon/U/filexp_path.U diff --git a/MANIFEST b/MANIFEST index f0197d5..6d7d0a9 100644 --- a/MANIFEST +++ b/MANIFEST @@ -438,7 +438,7 @@ mcon/U/enablenls.U Shall we enable NLS? mcon/U/errnolist.U See if we need our own .c to get sys_errnolist[] mcon/U/etc.U Where administrative executable should go mcon/U/fieldn.U Compute included filename position in cpp output -mcon/U/filexp.U Finds location of filexp made by Filexp.U +mcon/U/filexp_path.U Finds location of filexp made by Filexp.U mcon/U/floatsize.U What is the size of "float"? mcon/U/fpostype.U What is the type for file positions? mcon/U/fpu.U What kind of Sun fpu is in use? diff --git a/mcon/U/d_backtrace.U b/mcon/U/d_backtrace.U index 5f90e80..d33904b 100644 --- a/mcon/U/d_backtrace.U +++ b/mcon/U/d_backtrace.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: d_semget.U,v $ ?RCS: -?MAKE:d_backtrace: Trylink cat +?MAKE:d_backtrace: Trylink cat i_execinfo ?MAKE: -pick add $@ %< ?S:d_backtrace: ?S: This variable conditionally defines the HAS_BACKTRACE symbol, which @@ -27,7 +27,10 @@ ?LINT:set d_backtrace : see if backtrace exists $cat >try.c < +#endif int main(void) { void *buf[2]; diff --git a/mcon/U/filexp.U b/mcon/U/filexp.U deleted file mode 100644 index 73bf64d..0000000 --- a/mcon/U/filexp.U +++ /dev/null @@ -1,30 +0,0 @@ -?RCS: $Id$ -?RCS: -?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, -?RCS: as specified in the README file that comes with the distribution. -?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root -?RCS: of the source tree for dist 4.0. -?RCS: -?RCS: $Log: filexp.U,v $ -?RCS: Revision 3.0 1993/08/18 12:08:08 ram -?RCS: Baseline for dist 3.0 netwide release. -?RCS: -?MAKE:filexp: privlib -?MAKE: -pick add $@ %< -?S:filexp: -?S: This symbol contains the full pathname of the filexp script, in case we -?S: are saving the script for posterity. -?S:. -: must not allow self reference -case "$privlib" in - /*) - filexp=$privlib/filexp - ;; - *) - filexp=`pwd`/filexp - ;; -esac - diff --git a/mcon/U/filexp_path.U b/mcon/U/filexp_path.U new file mode 100644 index 0000000..73bf64d --- /dev/null +++ b/mcon/U/filexp_path.U @@ -0,0 +1,30 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: filexp.U,v $ +?RCS: Revision 3.0 1993/08/18 12:08:08 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:filexp: privlib +?MAKE: -pick add $@ %< +?S:filexp: +?S: This symbol contains the full pathname of the filexp script, in case we +?S: are saving the script for posterity. +?S:. +: must not allow self reference +case "$privlib" in + /*) + filexp=$privlib/filexp + ;; + *) + filexp=`pwd`/filexp + ;; +esac + diff --git a/mcon/U/i_execinfo.U b/mcon/U/i_execinfo.U index e013f7d..7df34d5 100644 --- a/mcon/U/i_execinfo.U +++ b/mcon/U/i_execinfo.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:i_execinfo: Inhdr Trylink cat +?MAKE:i_execinfo: Inhdr ?MAKE: -pick add $@ %< ?S:i_execinfo: ?S: This variable conditionally defines the I_EXECINFO symbol, and indicates -- cgit v1.2.3 From 42e08895fa7ce4c33fa7ded0f8f30ea99f669b97 Mon Sep 17 00:00:00 2001 From: cbiere Date: Sun, 16 Jan 2011 17:51:48 +0000 Subject: Use |= to ensure that the return value is an integer. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@76 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_backtrace.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_backtrace.U b/mcon/U/d_backtrace.U index d33904b..c296fa5 100644 --- a/mcon/U/d_backtrace.U +++ b/mcon/U/d_backtrace.U @@ -34,7 +34,7 @@ $cat >try.c < Date: Sun, 16 Jan 2011 18:00:13 +0000 Subject: Fixed previous edit: Cannot use |= as initializer. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@77 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_backtrace.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_backtrace.U b/mcon/U/d_backtrace.U index c296fa5..9282b12 100644 --- a/mcon/U/d_backtrace.U +++ b/mcon/U/d_backtrace.U @@ -34,7 +34,8 @@ $cat >try.c < Date: Sun, 16 Jan 2011 18:04:45 +0000 Subject: Added dist unit to check for presence of ttyname(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@78 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_ttyname.U | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 mcon/U/d_ttyname.U diff --git a/mcon/U/d_ttyname.U b/mcon/U/d_ttyname.U new file mode 100644 index 0000000..578fab7 --- /dev/null +++ b/mcon/U/d_ttyname.U @@ -0,0 +1,47 @@ +?RCS: $Id: d_backtrace.U 65 2011-01-01 22:01:00Z rmanfredi $ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: Copyright (c) 2011, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_semget.U,v $ +?RCS: +?MAKE:d_ttyname: Trylink cat i_unistd +?MAKE: -pick add $@ %< +?S:d_ttyname: +?S: This variable conditionally defines the HAS_TTYNAME symbol, which +?S: indicates to the C program that the ttyname() routine is available +?S: to determine the pathname of the terminal associated with +?S: a file descriptor. +?S:. +?C:HAS_TTYNAME: +?C: This symbol, if defined, indicates that the ttyname() routine is +?C: available to determine the pathname of the terminal associated with +?C: a file descriptor. The header must be included to use +?C: this routine. +?C:. +?H:#$d_ttyname HAS_TTYNAME /**/ +?H:. +?LINT:set d_ttyname +: see if ttyname exists +$cat >try.c < +#endif +int main(void) +{ + char *name = ttyname(1); + char c = *ttyname(2); + return name[0] == c ? 0 : 1; +} +EOC +cyn=ttyname +set d_ttyname +eval $trylink + -- cgit v1.2.3 From 2982d579211a4d80bba3faa974d1eabb5a811705 Mon Sep 17 00:00:00 2001 From: cbiere Date: Tue, 18 Jan 2011 04:35:08 +0000 Subject: Fixed many units to make compiling with GCC flag -Werror possible. Replaced exit() with return in main() due to missing #include . Added "(void) variable;" to silence warning about unused variable. Fixed Csym for GCC again (see FIXME tag). Added FIXME regarding VAL_EAGAIN. Added #define _GNU_SOURCE for pread() and pwrite() to get prototypes on GLIBC. Removed blunt cc output redirections because you can't fix what you can't see. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@79 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Csym.U | 14 ++++++++++++-- mcon/U/abortsig.U | 3 ++- mcon/U/byteorder.U | 2 +- mcon/U/ccflags.U | 3 +-- mcon/U/d_access.U | 9 +++++++-- mcon/U/d_const.U | 11 +++++++---- mcon/U/d_memalign.U | 7 ++++++- mcon/U/d_open3.U | 6 +++--- mcon/U/d_pread.U | 1 + mcon/U/d_pwrite.U | 1 + mcon/U/d_sigsetjmp.U | 8 ++++---- mcon/U/d_volatile.U | 15 ++++++++++----- mcon/U/i_time.U | 8 ++++---- mcon/U/i_varhdr.U | 3 ++- mcon/U/models.U | 6 +++--- mcon/U/nblock_io.U | 19 +++++++++++++------ mcon/U/orderlib.U | 2 +- mcon/U/prototype.U | 5 ++--- 18 files changed, 80 insertions(+), 43 deletions(-) diff --git a/mcon/U/Csym.U b/mcon/U/Csym.U index e7c7c4b..ff944ea 100644 --- a/mcon/U/Csym.U +++ b/mcon/U/Csym.U @@ -79,9 +79,19 @@ yes) ?X: ?X: Lastly, gcc 3.4 otimizes &missing == 0 away, so we use + 2 instead now. ?X: The GNU folks like to do weird things, don't they? -- RAM, 2004-06-05 +?X +?X: The above was invalid because main returns an int not a pointer. +?X: Using != or == does not work because GCC complains the pointer will +?X: never be NULL if the function exists. It is a warning meant to prevent +?X: using an address of a function by accident instead of calling it. +?X: However, &missing > 0 is indeed silently optimized away. +?X +?X: FIXME: There must be a test whether non-existing functions are found! ?X: - echo "extern char $1$tdc; int main() { return &$1$tc + 2; }" > t.c; - if $cc $ccflags $ldflags -o t t.c $libs >/dev/null 2>&1; +?X:. -- cbiere, 2011-01-18 +?X: + echo "extern char $1$tdc; int main(void) { return (unsigned long) &$1$tc > 2; }" > t.c; + if $cc $ccflags $ldflags -o t t.c $libs; then tval=true; else tval=false; fi; diff --git a/mcon/U/abortsig.U b/mcon/U/abortsig.U index a13f30f..7723b7e 100644 --- a/mcon/U/abortsig.U +++ b/mcon/U/abortsig.U @@ -38,8 +38,9 @@ case "$abortsig" in for signal in SIGIOT SIGILL SIGABRT; do case "$abortsig" in '') $cat >abort.c <*/ #include -caught() { exit(0); } +caught() { exit(0); } /* FIXME: Use _exit() or _Exit() in signal handler */ int main() { #ifdef $signal diff --git a/mcon/U/byteorder.U b/mcon/U/byteorder.U index a337080..03665d0 100644 --- a/mcon/U/byteorder.U +++ b/mcon/U/byteorder.U @@ -63,7 +63,7 @@ int main() for (i = 0; i < sizeof(long); i++) printf("%c", u.c[i]+'0'); printf("\n"); - exit(0); + return 0; } EOCP xxx_prompt=y diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index 876af98..be37f52 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -373,8 +373,7 @@ and I got the following output: EOM $cat > try.c <<'EOF' -#include -int main() { exit(0); } +int main() { return 0; } EOF dflt=y ?X: Use "sh -c" to avoid error messages tagged with leading "Configure:". diff --git a/mcon/U/d_access.U b/mcon/U/d_access.U index 503ee2a..9834199 100644 --- a/mcon/U/d_access.U +++ b/mcon/U/d_access.U @@ -61,8 +61,13 @@ case "$d_access" in #ifdef I_UNISTD #include #endif -int main() { - exit(R_OK); +int main(void) { + static int mode; + mode |= R_OK; + mode |= W_OK; + mode |= X_OK; + mode |= F_OK; + return mode ? 0 : 1; } EOCP : check sys/file.h first, no particular reason here diff --git a/mcon/U/d_const.U b/mcon/U/d_const.U index 4801d09..f146b87 100644 --- a/mcon/U/d_const.U +++ b/mcon/U/d_const.U @@ -47,13 +47,16 @@ $cat >const.c <<'EOCP' ?X: handle typedefs properly if they're declared const. To guard ?X: against this, boost up the test by using an explicit typedef... typedef struct spug { int drokk; } spug; -int main() +int main(void) { - const char *foo; - const spug y; + static const char *foo; + static const spug y; + (void) foo; + (void) y; + return 0; } EOCP -if $cc -c $ccflags const.c >/dev/null 2>&1 ; then +if $cc -c $ccflags const.c; then val="$define" echo "Yup, it does." else diff --git a/mcon/U/d_memalign.U b/mcon/U/d_memalign.U index 3adbb69..e814653 100644 --- a/mcon/U/d_memalign.U +++ b/mcon/U/d_memalign.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: d_memalign.U,v $ ?RCS: -?MAKE:d_memalign: Trylink cat i_stdlib +?MAKE:d_memalign: Trylink cat i_stdlib i_malloc ?MAKE: -pick add $@ %< ?S:d_memalign: ?S: This variable conditionally defines the HAS_MEMALIGN symbol, which @@ -25,10 +25,15 @@ ?LINT:set d_memalign : see if memalign exists $cat >try.c < #endif +#$i_malloc I_MALLOC +#ifdef I_MALLOC +#include +#endif int main(void) { static size_t align, size; diff --git a/mcon/U/d_open3.U b/mcon/U/d_open3.U index 6828112..ee56f45 100644 --- a/mcon/U/d_open3.U +++ b/mcon/U/d_open3.U @@ -48,12 +48,12 @@ $cat >open3.c <<'EOCP' #ifdef I_SYS_FILE #include #endif -int main() { +int main(void) { if(O_RDONLY); #ifdef O_TRUNC - exit(0); + return 0; #else - exit(1); + return 1; #endif } EOCP diff --git a/mcon/U/d_pread.U b/mcon/U/d_pread.U index e4f5afd..72edba4 100644 --- a/mcon/U/d_pread.U +++ b/mcon/U/d_pread.U @@ -25,6 +25,7 @@ ?LINT:set d_pread : see if pread exists $cat >try.c < #$i_unistd I_UNISTD #ifdef I_UNISTD diff --git a/mcon/U/d_pwrite.U b/mcon/U/d_pwrite.U index ed00afc..c568c06 100644 --- a/mcon/U/d_pwrite.U +++ b/mcon/U/d_pwrite.U @@ -25,6 +25,7 @@ ?LINT:set d_pwrite : see if pwrite exists $cat >try.c < #$i_unistd I_UNISTD #ifdef I_UNISTD diff --git a/mcon/U/d_sigsetjmp.U b/mcon/U/d_sigsetjmp.U index 8a1d474..8ecf709 100644 --- a/mcon/U/d_sigsetjmp.U +++ b/mcon/U/d_sigsetjmp.U @@ -65,16 +65,16 @@ case "$d_sigsetjmp" in #include sigjmp_buf env; int set = 1; -int main() +int main(void) { if (sigsetjmp(env,1)) - exit(set); + return set; set = 0; siglongjmp(env, 1); - exit(1); + return 1; } EOP - if $cc $ccflags $ldflags -o set set.c $libs > /dev/null 2>&1 ; then + if $cc $ccflags $ldflags -o set set.c $libs; then if ./set >/dev/null 2>&1; then echo "POSIX sigsetjmp found." >&4 val="$define" diff --git a/mcon/U/d_volatile.U b/mcon/U/d_volatile.U index f94ca4f..6ef01db 100644 --- a/mcon/U/d_volatile.U +++ b/mcon/U/d_volatile.U @@ -41,7 +41,7 @@ echo " " echo 'Checking to see if your C compiler knows about "volatile"...' >&4 $cat >try.c <<'EOCP' -int main() +int main(void) { ?X: ?X: The following seven lines added by Bill Campbell @@ -55,13 +55,18 @@ int main() char char_var; }; typedef unsigned short foo_t; - char *volatile foo; - volatile int bar; - volatile foo_t blech; + static char *volatile foo; + static volatile int bar; + static volatile foo_t blech; foo = foo; + (void) goo; + (void) foo; + (void) bar; + (void) blech; + return 0; } EOCP -if $cc -c $ccflags try.c >/dev/null 2>&1 ; then +if $cc -c $ccflags try.c; then val="$define" echo "Yup, it does." else diff --git a/mcon/U/i_time.U b/mcon/U/i_time.U index cdf1519..c573fa4 100644 --- a/mcon/U/i_time.U +++ b/mcon/U/i_time.U @@ -73,7 +73,7 @@ $cat >try.c <<'EOCP' #ifdef I_SYSSELECT #include #endif -int main() +int main(void) { struct tm foo; #ifdef S_TIMEVAL @@ -83,12 +83,12 @@ int main() struct timezone tzp; #endif if (foo.tm_sec == foo.tm_sec) - exit(0); + return 0; #ifdef S_TIMEVAL if (bar.tv_sec == bar.tv_sec) - exit(0); + return 0; #endif - exit(1); + return 1; } EOCP flags='' diff --git a/mcon/U/i_varhdr.U b/mcon/U/i_varhdr.U index df6cfe5..e0fd6d1 100644 --- a/mcon/U/i_varhdr.U +++ b/mcon/U/i_varhdr.U @@ -109,11 +109,12 @@ va_dcl p = va_arg(ap, char *); #endif va_end(ap); + return 0; } EOP $cat > varargs </dev/null 2>&1; then +if $cc -c $ccflags -D\$1 varargs.c; then echo "true" else echo "false" diff --git a/mcon/U/models.U b/mcon/U/models.U index b903134..52cdd14 100644 --- a/mcon/U/models.U +++ b/mcon/U/models.U @@ -64,11 +64,11 @@ case "$models" in ?X: We may not use Cppsym or we get a circular dependency through cc. ?X: But this should work regardless of which cc we eventually use. $cat >pdp11.c <<'EOP' -int main() { +int main(void) { #ifdef pdp11 - exit(0); + return 0; #else - exit(1); + return 1; #endif } EOP diff --git a/mcon/U/nblock_io.U b/mcon/U/nblock_io.U index 5a5aa04..fef20ac 100644 --- a/mcon/U/nblock_io.U +++ b/mcon/U/nblock_io.U @@ -55,6 +55,12 @@ ?C:VAL_EAGAIN: ?C: This symbol holds the errno error code set by read() when no data was ?C: present on the non-blocking file descriptor. +?C: +?C: FIXME: And who guarantees this isn't e.g. device-dependent? +?C: If EAGAIN is defined one should expect it. +?C: If EWOULDBLOCK is defined one should expect it. +?C: If both are defined one should expect both. +?C: -- cbiere, 2011-01-18 ?C:. ?C:RD_NODATA: ?C: This symbol holds the return code from read() when no data is present @@ -91,22 +97,22 @@ case "$o_nonblock" in '') $cat head.c > try.c $cat >>try.c <<'EOCP' -int main() { +#include +int main(void) { #ifdef O_NONBLOCK printf("O_NONBLOCK\n"); - exit(0); + return 0; #endif #ifdef O_NDELAY printf("O_NDELAY\n"); - exit(0); + return 0; #endif ?X: Stevens "Advanced Programming in the UNIX Environment" page 364 mentions ?X: the FNDELAY symbol, used in 4.33BSD (source: Paul Marquess). #ifdef FNDELAY printf("FNDELAY\n"); - exit(0); #endif - exit(0); + return 0; } EOCP if $cc $ccflags $ldflags -o try try.c >/dev/null 2>&1; then @@ -132,6 +138,7 @@ case "$eagain" in #include #include #include +#include #define MY_O_NONBLOCK $o_nonblock extern int errno; $signal_t blech(x) int x; { exit(3); } @@ -184,7 +191,7 @@ int main() close(pu[1]); /* We read from pu[0] */ read(pu[0], buf, 1); /* Wait for parent to signal us we may continue */ close(pd[1]); /* Pipe pd is now fully closed! */ - exit(0); /* Bye bye, thank you for playing! */ + return 0; /* Bye bye, thank you for playing! */ } EOCP if $cc $ccflags $ldflags -o try try.c >/dev/null 2>&1; then diff --git a/mcon/U/orderlib.U b/mcon/U/orderlib.U index 0c77e54..1c0feb7 100644 --- a/mcon/U/orderlib.U +++ b/mcon/U/orderlib.U @@ -51,7 +51,7 @@ echo "Checking how to generate random libraries on your machine..." >&4 echo 'int bar1() { return bar2(); }' > bar1.c echo 'int bar2() { return 2; }' > bar2.c $cat > foo.c <<'EOP' -int main() { printf("%d\n", bar1()); exit(0); } +int main() { printf("%d\n", bar1()); return 0; } EOP $cc $ccflags -c bar1.c >/dev/null 2>&1 $cc $ccflags -c bar2.c >/dev/null 2>&1 diff --git a/mcon/U/prototype.U b/mcon/U/prototype.U index ec65247..f254e2c 100644 --- a/mcon/U/prototype.U +++ b/mcon/U/prototype.U @@ -102,10 +102,9 @@ echo " " echo "Checking out function prototypes..." >&4 $cat >prototype.c <<'EOCP' -int main(int argc, char *argv[]) { - exit(0);} +int main(int argc, char *argv[]) { (void) argc; (void) argv; return 0; } EOCP -if $cc $ccflags -c prototype.c >prototype.out 2>&1 ; then +if $cc $ccflags -c prototype.c; then echo "Your C compiler appears to support function prototypes." val="$define" else -- cgit v1.2.3 From 8a75d6d5e88e97c99d415f1e56f8a45c441a91f8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 22 Jan 2011 15:04:23 +0000 Subject: Added checks for and . git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@80 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/U/i_linux_netlink.U | 29 +++++++++++++++++++++++++++++ mcon/U/i_linux_rtnetlink.U | 29 +++++++++++++++++++++++++++++ 3 files changed, 60 insertions(+) create mode 100644 mcon/U/i_linux_netlink.U create mode 100644 mcon/U/i_linux_rtnetlink.U diff --git a/MANIFEST b/MANIFEST index 6d7d0a9..b45f222 100644 --- a/MANIFEST +++ b/MANIFEST @@ -466,6 +466,8 @@ mcon/U/i_langinfo.U Shall we include ? mcon/U/i_libcharset.U Shall we include ? mcon/U/i_libintl.U Shall we include ? mcon/U/i_limits.U Shall we include ? +mcon/U/i_linux_netlink.U Shall we include ? +mcon/U/i_linux_rtnetlink.U Shall we include ? mcon/U/i_locale.U Shall we include ? mcon/U/i_malloc.U Shall we include ? mcon/U/i_math.U Shall we include ? diff --git a/mcon/U/i_linux_netlink.U b/mcon/U/i_linux_netlink.U new file mode 100644 index 0000000..b0ed672 --- /dev/null +++ b/mcon/U/i_linux_netlink.U @@ -0,0 +1,29 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_linux_netlink: Inhdr +?MAKE: -pick add $@ %< +?S:i_linux_netlink: +?S: This variable conditionally defines the I_LINUX_NETLINK symbol, and +?S: indicates whether a C program may include to define +?S: the NLMSG_DATA() and other NLMSG_NEXT() macros. +?S:. +?C:I_LINUX_NETLINK: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get definitions for the NLMSG_DATA() and +?C: other NLMSG_NEXT() macros. +?C:. +?H:#$i_linux_netlink I_LINUX_NETLINK /**/ +?H:. +?LINT:set i_linux_netlink +: see if this is a linux/netlink.h system +set linux/netlink.h i_linux_netlink +eval $inhdr + diff --git a/mcon/U/i_linux_rtnetlink.U b/mcon/U/i_linux_rtnetlink.U new file mode 100644 index 0000000..b7db760 --- /dev/null +++ b/mcon/U/i_linux_rtnetlink.U @@ -0,0 +1,29 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_linux_rtnetlink: Inhdr +?MAKE: -pick add $@ %< +?S:i_linux_rtnetlink: +?S: This variable conditionally defines the I_LINUX_RTNETLINK symbol, and +?S: indicates whether a C program may include to define +?S: the RTA_DATA() and other RTA_NEXT() macros. +?S:. +?C:I_LINUX_RTNETLINK: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get definitions for the RTA_DATA() and +?C: other RTA_NEXT() macros. +?C:. +?H:#$i_linux_rtnetlink I_LINUX_RTNETLINK /**/ +?H:. +?LINT:set i_linux_rtnetlink +: see if this is a linux/rtnetlink.h system +set linux/rtnetlink.h i_linux_rtnetlink +eval $inhdr + -- cgit v1.2.3 From 2965c6a7bb8ff0e6ef868ca1c83b67cf5958e16c Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 22 Jan 2011 19:07:34 +0000 Subject: Added i_netroute.U to check for . git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@81 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/i_netroute.U | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 mcon/U/i_netroute.U diff --git a/MANIFEST b/MANIFEST index b45f222..586a921 100644 --- a/MANIFEST +++ b/MANIFEST @@ -477,6 +477,7 @@ mcon/U/i_ndbm.U Shall we include ? mcon/U/i_netdb.U Shall we include ? mcon/U/i_neterrno.U Shall we include ? mcon/U/i_netif.U Shall we include ? +mcon/U/i_netroute.U Can we include ? mcon/U/i_niin.U Shall we include ? mcon/U/i_niip.U Shall we include ? mcon/U/i_poll.U Shall we include ? diff --git a/mcon/U/i_netroute.U b/mcon/U/i_netroute.U new file mode 100644 index 0000000..54390e3 --- /dev/null +++ b/mcon/U/i_netroute.U @@ -0,0 +1,30 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?X: +?X: This unit looks whether is available or not +?X: +?MAKE:i_netroute: Inhdr +?MAKE: -pick add $@ %< +?S:i_netroute: +?S: This variable conditionally defines I_NET_ROUTE, which indicates +?S: to the C program that it can include . +?S:. +?C:I_NET_ROUTE: +?C: This symbol, if defined, indicates to the C program that it can +?C: include . +?C:. +?H:#$i_netroute I_NET_ROUTE /**/ +?H:. +?LINT:set i_netroute +: see if this is a net/route.h system +set net/route.h i_netroute +eval $inhdr + -- cgit v1.2.3 From 2fc2a4274c753eb829ea95e1a32dcc5e3ae3b976 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 22 Jan 2011 19:57:19 +0000 Subject: Fixed old bug: preserve and propagate new OS name / version when loading an older config.sh file. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@82 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Oldconfig.U | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index 9e079dd..6ab55bb 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -103,6 +103,7 @@ ?T:tmp tmp_n tmp_c tmp_sh file ?T:xxxxfile xxxfile xxfile xfile hintfile newmyuname ?T:tans _ isesix INITPROG DJGPP has_uname +?T:saved_myuname saved_osname saved_osvers ?D:osname='' ?LINT:change n c sh ?LINT:extern hostarch @@ -442,6 +443,12 @@ case "$knowitall" in *) dflt=y;; esac +?X: Before loading a previous config.sh, save the variables we've +?X: just computed above so that we can propagate these new values. +saved_myuname="$myuname" +saved_osname="$osname" +saved_osvers="$osvers" + : Get old answers from config file if it was generated on the same system hint=default if $test -f ../config.sh; then @@ -495,6 +502,10 @@ $test "$override" && . ./optdef.sh for file in $loclist $trylist; do eval $file="\$_$file" done +?X: Restore computed OS name / version +myuname="$saved_myuname" +osname="$saved_osname" +osvers="$saved_osvers" . ./checkcc ?X: Cross-compiling support -- cgit v1.2.3 From b05dfbbe9d4ee8072e97d7f00ef9e44b54e6ebb7 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 22 Jan 2011 20:20:43 +0000 Subject: No need to save myuname. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@83 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Oldconfig.U | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index 6ab55bb..58467e3 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -103,7 +103,7 @@ ?T:tmp tmp_n tmp_c tmp_sh file ?T:xxxxfile xxxfile xxfile xfile hintfile newmyuname ?T:tans _ isesix INITPROG DJGPP has_uname -?T:saved_myuname saved_osname saved_osvers +?T:saved_osname saved_osvers ?D:osname='' ?LINT:change n c sh ?LINT:extern hostarch @@ -445,7 +445,6 @@ esac ?X: Before loading a previous config.sh, save the variables we've ?X: just computed above so that we can propagate these new values. -saved_myuname="$myuname" saved_osname="$osname" saved_osvers="$osvers" @@ -503,7 +502,6 @@ for file in $loclist $trylist; do eval $file="\$_$file" done ?X: Restore computed OS name / version -myuname="$saved_myuname" osname="$saved_osname" osvers="$saved_osvers" -- cgit v1.2.3 From 4d556accb556e664de7fbe285c2420d265d9d056 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 22 Jan 2011 20:52:20 +0000 Subject: Merged modifications from gtk-gnutella. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@84 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Loc.U | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 66 insertions(+), 9 deletions(-) diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index 37f31ec..185ba34 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -63,16 +63,18 @@ ?X: ?MAKE:Loc awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ - gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ + gcc gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ make mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee test touch tr troff \ + gmsgfmt msgfmt msgmerge xgettext \ uname uniq uuname vi zcat zip: eunicefix n c startsh Instruct Warn ?MAKE: -pick weed $@ %< ?LINT: describe awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ - gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ + gcc gmake gzip grep inews ksh less line lint ln lp lpr ls mail mailx \ make mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee test touch tr troff \ + gmsgfmt msgfmt msgmerge xgettext \ uname uniq uuname vi zcat zip ?V::pth loclist trylist ?F:./loc @@ -147,6 +149,7 @@ loclist=" ?find:find ?grep:grep ?ls:ls +?make:make ?mkdir:mkdir ?mv:mv ?rm:rm @@ -173,6 +176,8 @@ trylist=" ?emacs:emacs ?flex:flex ?gmake:gmake +?gcc:gcc +?gmsgfmt:gmsgfmt ?gzip:gzip ?inews:inews ?ksh:ksh @@ -184,8 +189,9 @@ trylist=" ?lpr:lpr ?mail:mail ?mailx:mailx -?make:make ?more:more +?msgfmt:msgfmt +?msgmerge:msgmerge ?nawk:nawk ?nm:nm ?nroff:nroff @@ -206,14 +212,16 @@ trylist=" ?uname:uname ?uuname:uuname ?vi:vi +?xgettext:xgettext ?zcat:zcat ?zip:zip " ?LINT: set awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo emacs expr find flex \ - gmake gzip grep inews ksh less line lint lp lpr ls mail mailx \ + gcc gmake gzip grep inews ksh less line lint lp lpr ls mail mailx \ mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee touch tr troff \ + msgfmt msgmerge \ uname uniq uuname vi zcat zip pth=`echo $PATH | sed -e "s/$p_/ /g"` pth="$pth /sbin /usr/sbin /lib /usr/lib /etc" @@ -250,7 +258,7 @@ for file in $loclist; do ;; *) echo "I don't know where '$file' is, and my life depends on it." >&4 - echo "Go find a public domain implementation or fix your PATH setting!" >&4 + echo "Go find a public domain implementation or fix your PATH!" >&4 exit 1 ;; esac @@ -319,10 +327,12 @@ make) esac case "$gmake" in gmake) ;; -*) # We can't have osname yet. - if test -f "/system/gnu_library/bin/ar.pm"; then # Stratus VOS - # Assume that gmake, if found, is definitely GNU make - # and prefer it over the system make. +*) +?X: We can't have osname yet. +?X: On Stratus VOS, assume that gmake, if found, is definitely GNU make +?X: and prefer it over the system make. + if test -f "/system/gnu_library/bin/ar.pm"; then + : Stratus VOS echo "Substituting gmake for make." make=$gmake _make=$_gmake @@ -330,6 +340,53 @@ gmake) ;; ;; esac @end +@if gmsgfmt && msgfmt +?LINT: extern _msgfmt +?LINT: change _gmsgfmt +case "$gmsgfmt" in +gmsgfmt) + echo "Substituting msgfmt for gmsgfmt." + gmsgfmt=$msgfmt + _gmsgfmt=$_msgfmt + ;; +*) + if $gmsgfmt --statistics /dev/null >/dev/null 2>&1 && + (if $gmsgfmt --statistics /dev/null 2>&1 >/dev/null | \ + grep usage >/dev/null; then exit 0; else exit 1; fi) + then + echo "Your $gmsgfmt is not GNU msgfmt; substituting msgfmt." + gmsgfmt=$msgfmt + _gmsgfmt=$_msgfmt + fi + ;; +esac +@end +@if xgettext +?LINT: change _xgettext +case "$xgettext" in +xgettext) + xgettext=":" + _xgettext=":" + ;; +*) + if $xgettext --omit-header --copyright-holder= /dev/null >/dev/null 2>&1 && + (if $xgettext --omit-header --copyright-holder= \ + /dev/null 2>&1 >/dev/null | \ + grep usage >/dev/null; then exit 0; else exit 1; fi) + then + echo "Your $xgettext is not GNU xgettext; ignoring it." + xgettext=":" + _xgettext=":" + elif $xgettext --from-code=UTF-8 /dev/null >/dev/null 2>&1; then + : ok + else + echo "Your $xgettext does not support --from-code; ignoring it." + xgettext=":" + _xgettext=":" + fi + ;; +esac +@end case "$test" in test) echo "Hopefully test is built into your sh." -- cgit v1.2.3 From dcbc2167d1c02acf6b6bd9b3e584e37003327bda Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 23 Jan 2011 11:22:50 +0000 Subject: Recognize MinGW as an OS. Be smarter when old values not corresponding to our current os are loaded, and ask whether they should be made the default. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@85 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Oldconfig.U | 37 ++++++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index 58467e3..6feabbe 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -121,6 +121,7 @@ myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \ ./tr '[A-Z]' '[a-z]' | $tr $trnl ' '` ?X: Save the value we just computed to reset myuname after we get done here. newmyuname="$myuname" +has_uname= $test -f "$uname$_exe" && has_uname=y : Guessing of the OS name -- half the following guesses are probably wrong... @@ -190,7 +191,8 @@ if $test "X$has_uname" != X; then osvers=4 elif $contains _SYSV3 /usr/include/stdio.h > /dev/null 2>&1 ; then osvers=3 - elif $contains _POSIX_SOURCE /usr/include/stdio.h > /dev/null 2>&1 ; then + elif $contains _POSIX_SOURCE /usr/include/stdio.h > /dev/null 2>&1 + then osvers=2 fi fi @@ -234,7 +236,10 @@ if $test "X$has_uname" != X; then osvers=`$uname -r` ;; cygwin*) osname=cygwin - osvers="$3" + osvers=`echo "$3" | sed -e 's/\(.*\)(.*/\1/'` + ;; + mingw*) osname=mingw + osvers=`echo "$3" | sed -e 's/\(.*\)(.*/\1/'` ;; *dc.osx) osname=dcosx osvers="$3" @@ -447,6 +452,9 @@ esac ?X: just computed above so that we can propagate these new values. saved_osname="$osname" saved_osvers="$osvers" +tmp_n="$n" +tmp_c="$c" +tmp_sh="$sh" : Get old answers from config file if it was generated on the same system hint=default @@ -460,14 +468,19 @@ if $test -f ../config.sh; then myuname="$newmyuname" ;; *) echo "Fetching default answers from your old config.sh file..." >&4 - tmp_n="$n" - tmp_c="$c" - tmp_sh="$sh" . ../config.sh cp ../config.sh . - n="$tmp_n" - c="$tmp_c" hint=previous + case "$dflt" in + n) + echo " " + rp="Do you want further invocations to use these defaults?" + . ./myread + case "$ans" in + y*|Y*) myuname="$newmyuname";; + esac + ;; + esac ;; esac fi @@ -476,9 +489,6 @@ fi *) echo " " echo "Fetching default answers from $config_sh..." >&4 - tmp_n="$n" - tmp_c="$c" - tmp_sh="$sh" cd .. ?X: preserve symbolic links, if any cp $config_sh config.sh 2>/dev/null @@ -486,8 +496,6 @@ fi . ./config.sh cd UU cp ../config.sh . - n="$tmp_n" - c="$tmp_c" hint=previous ;; esac @@ -501,9 +509,12 @@ $test "$override" && . ./optdef.sh for file in $loclist $trylist; do eval $file="\$_$file" done -?X: Restore computed OS name / version + +?X: Restore saved variables osname="$saved_osname" osvers="$saved_osvers" +n="$tmp_n" +c="$tmp_c" . ./checkcc ?X: Cross-compiling support -- cgit v1.2.3 From c7434daf8fe9760bfac1b386b7fb209b8176d41c Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 23 Jan 2011 14:07:09 +0000 Subject: Fixed small buglets preventing proper execution on MinGW. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@86 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Loc.U | 2 +- mcon/U/Oldconfig.U | 2 +- mcon/U/lns.U | 3 +-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index 185ba34..5dacfc6 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -413,7 +413,7 @@ echo) '') ;; *) echo " " -echo "Checking compatibility between $echo and builtin echo (if any)..." >&4 +echo "Checking compatibility between $_echo and builtin echo (if any)..." >&4 $echo $n "hi there$c" >foo1 echo $n "hi there$c" >foo2 if cmp foo1 foo2 >/dev/null 2>&1; then diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index 6feabbe..a212d0d 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -507,7 +507,7 @@ $test "$override" && . ./optdef.sh : Restore computed paths for file in $loclist $trylist; do - eval $file="\$_$file" + eval $file="\$_$file"$_exe done ?X: Restore saved variables diff --git a/mcon/U/lns.U b/mcon/U/lns.U index 6160bd4..3aef6d2 100644 --- a/mcon/U/lns.U +++ b/mcon/U/lns.U @@ -28,8 +28,7 @@ ?S:. : determine whether symbolic links are supported echo " " -$touch blurfl -$rm -f sym +$rm -f blurfl sym if $ln -s blurfl sym > /dev/null 2>&1 && $test -f sym; then echo "Symbolic links are supported." >&4 lns="$ln -s" -- cgit v1.2.3 From c658eff5821c155f72e24e49288364529bf02bfa Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 24 Jan 2011 08:40:35 +0000 Subject: Keep a log of what $csym does into csym.log for inspection. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@87 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Csym.U | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/mcon/U/Csym.U b/mcon/U/Csym.U index ff944ea..5caeea2 100644 --- a/mcon/U/Csym.U +++ b/mcon/U/Csym.U @@ -26,7 +26,7 @@ ?RCS: Revision 3.0 1993/08/18 12:04:50 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:Csym: Options contains libc libs runnm +cc +ccflags +ldflags rm +?MAKE:Csym: Options contains cat libc libs runnm +cc +ccflags +ldflags rm ?MAKE: -pick add $@ %< ?LINT:define csym ?LINT:use libc @@ -41,7 +41,7 @@ ?S: is reused without questioning. ?S:. ?V:csym -?T:tval tx tlook tf tdc tc +?T:tval tx tlook tf tdc tc file : is a C symbol defined? csym='tlook=$1; case "$3" in @@ -49,6 +49,7 @@ case "$3" in -a) tf=libc.tmp; tc="[0]"; tdc="[]";; *) tlook="^$1\$"; tf=libc.list; tc=""; tdc="()";; esac; +file=csym.log; tx=yes; case "$reuseval-$4" in true-) ;; @@ -90,11 +91,14 @@ yes) ?X: ?X:. -- cbiere, 2011-01-18 ?X: + echo "--- $1$tdc ---" >> "$file"; echo "extern char $1$tdc; int main(void) { return (unsigned long) &$1$tc > 2; }" > t.c; - if $cc $ccflags $ldflags -o t t.c $libs; + $cat t.c >> "$file"; + if $cc $ccflags $ldflags -o t t.c $libs >>"$file" 2>&1; then tval=true; else tval=false; fi; + echo "==> HAS $1$tdc is $tval" >>"$file"; $rm -f t t.c;; esac;; *) @@ -103,5 +107,6 @@ yes) *) tval=false;; esac;; esac; +echo "==> SET $2=$tval" >>"$file"; eval "$2=$tval"' -- cgit v1.2.3 From d6b0a41043f0e0b4764e0dce303b1f97346145bd Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 24 Jan 2011 08:51:00 +0000 Subject: Better logs. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@88 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Csym.U | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mcon/U/Csym.U b/mcon/U/Csym.U index 5caeea2..94a5649 100644 --- a/mcon/U/Csym.U +++ b/mcon/U/Csym.U @@ -98,7 +98,6 @@ yes) then tval=true; else tval=false; fi; - echo "==> HAS $1$tdc is $tval" >>"$file"; $rm -f t t.c;; esac;; *) @@ -107,6 +106,6 @@ yes) *) tval=false;; esac;; esac; -echo "==> SET $2=$tval" >>"$file"; +echo "==> HAS $1$tdc is $tval ($4)" >>"$file"; eval "$2=$tval"' -- cgit v1.2.3 From 7999df50ea86cac4758f413a85108723aab607ef Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 24 Jan 2011 09:02:51 +0000 Subject: Expose the .exe extension in pathnames. Fixed yacc.U since now the command variables like $yacc already include the trailing $_exe in their value. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@89 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/sh.U | 4 ++-- mcon/U/yacc.U | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/mcon/U/sh.U b/mcon/U/sh.U index f0b9965..4fb3146 100644 --- a/mcon/U/sh.U +++ b/mcon/U/sh.U @@ -66,10 +66,10 @@ case "$sh" in sh="$xxx" break elif test -f "$xxx$_exe"; then - sh="$xxx" + sh="$xxx$_exe" break elif test -f "$xxx.exe"; then - sh="$xxx" + sh="$xxx.exe" break fi done diff --git a/mcon/U/yacc.U b/mcon/U/yacc.U index 4447b0b..d828917 100644 --- a/mcon/U/yacc.U +++ b/mcon/U/yacc.U @@ -29,20 +29,20 @@ : determine compiler compiler echo " " comp='yacc' -if $test -f "$byacc$_exe"; then +if $test -f "$byacc"; then comp="byacc or $comp" fi -if $test -f "$bison$_exe"; then +if $test -f "$bison"; then comp="$comp or bison -y" fi case "$yacc" in '') yacc=`./loc yacc yacc $pth` - if $test -f "$yacc$_exe"; then + if $test -f "$yacc"; then dflt='yacc' - elif $test -f "$byacc$_exe"; then + elif $test -f "$byacc"; then dflt='byacc' - elif $test -f "$bison$_exe"; then + elif $test -f "$bison"; then dflt='bison' else dflt='' -- cgit v1.2.3 From 5da52d603dd12ac89ec0829c589972aab54ed73f Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 24 Jan 2011 09:05:12 +0000 Subject: Fixed metalint warnings. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@90 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Loc.U | 2 +- mcon/U/lns.U | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index 5dacfc6..eecb81a 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -79,7 +79,7 @@ ?V::pth loclist trylist ?F:./loc ?T:thisthing thing xxx dir file say DJGPP -?T:_test _grep _cp _gmake _egrep _ln _make dflt +?T:_echo _test _grep _cp _gmake _egrep _ln _make dflt ?LINT: change PATH : find out where common programs are echo " " diff --git a/mcon/U/lns.U b/mcon/U/lns.U index 3aef6d2..d2475df 100644 --- a/mcon/U/lns.U +++ b/mcon/U/lns.U @@ -19,7 +19,7 @@ ?X: We can't rely on d_symlink because that may be listed in the ?X: C library but unimplemented. ?X: -?MAKE:lns: ln rm touch test +?MAKE:lns: ln rm test ?MAKE: -pick add $@ %< ?S:lns: ?S: This variable holds the name of the command to make -- cgit v1.2.3 From f3142853304a7dfeb078111d31fb848205e3d17a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 30 Jan 2011 22:36:05 +0000 Subject: With new Loc.U, we must not append $_exe when testing for a command presence using the $command variable. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@91 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Oldconfig.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index a212d0d..7f862f0 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -122,7 +122,7 @@ myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \ ?X: Save the value we just computed to reset myuname after we get done here. newmyuname="$myuname" has_uname= -$test -f "$uname$_exe" && has_uname=y +$test -f "$uname" && has_uname=y : Guessing of the OS name -- half the following guesses are probably wrong... : If you have better tests or hints, please send them to the metaconfig -- cgit v1.2.3 From 046d8550c589cf6927fbc2aeceada3265da8f258 Mon Sep 17 00:00:00 2001 From: cbiere Date: Mon, 7 Feb 2011 03:10:43 +0000 Subject: Fixed libs.U so that it works with gcc -Werror. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@92 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/libs.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/libs.U b/mcon/U/libs.U index 0a8feaa..4e1d879 100644 --- a/mcon/U/libs.U +++ b/mcon/U/libs.U @@ -127,7 +127,7 @@ case "$usesocks" in "$define") libswanted="$libswanted socks5 socks5_sh" ;; esac ?X: Used later for link checks -echo "extern char printf(); int main() { printf(); return 0; }" > lt.c +echo "extern void abort(void); int main(void) { abort(); return 0; }" > lt.c libsfound='' libsfiles='' libsdirs='' -- cgit v1.2.3 From bffb7dd55c58bc36bce9a7cfd87ca585c248caa5 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 7 Feb 2011 08:40:00 +0000 Subject: Hide compilation errors. Output message cleanup. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@93 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_sigsetjmp.U | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/mcon/U/d_sigsetjmp.U b/mcon/U/d_sigsetjmp.U index 8ecf709..82ec9ef 100644 --- a/mcon/U/d_sigsetjmp.U +++ b/mcon/U/d_sigsetjmp.U @@ -74,26 +74,27 @@ int main(void) return 1; } EOP - if $cc $ccflags $ldflags -o set set.c $libs; then + if $cc $ccflags $ldflags -o set set.c $libs >/dev/null 2>&1; then if ./set >/dev/null 2>&1; then - echo "POSIX sigsetjmp found." >&4 + echo "POSIX sigsetjmp() found." >&4 val="$define" else $cat >&4 <&4 + echo "sigsetjmp() not found." >&4 val="$undef" fi ;; *) val="$d_sigsetjmp" case "$d_sigsetjmp" in - $define) echo "POSIX sigsetjmp found." >&4;; - $undef) echo "sigsetjmp not found." >&4;; + $define) echo "POSIX sigsetjmp() found." >&4;; + $undef) echo "sigsetjmp() not found." >&4;; esac ;; esac -- cgit v1.2.3 From 639209d878d1a8f1d9bff6c14431136e696d9647 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 10 Feb 2011 14:06:58 +0000 Subject: Programs generated for Windows need a trailing .exe in the "cc -o" line. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@94 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index 671bb18..b3b4f8b 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -97,7 +97,7 @@ local_realclean:: @@\ * used *inside* building rules. */ #define RemoveTargetProgram(program) \ - $(RM) program^^$(_EXE) @@\ + -$(RM) program^^$(_EXE) @@\ if test -f program^^^$(_EXE); then \ @@\ $(MV) program^^^$(_EXE) program^^~^^^$(_EXE); fi @@ -115,7 +115,7 @@ AllTargetProgram(program) @!\ @!\ program: objects @@\ RemoveTargetProgram($@) @@\ - $(CC) -o $@ objects $(JLDFLAGS) $(LIBS) @!\ + $(CC) -o $@$(_EXE) objects $(JLDFLAGS) $(LIBS) @!\ /* @@ -152,7 +152,7 @@ AllTargetProgram(program) @!\ @!\ program: $(OBJS) @@\ RemoveTargetProgram($@) @@\ - $(CC) -o $@ $(OBJS) $(JLDFLAGS) $(LIBS) @!\ + $(CC) -o $@$(_EXE) $(OBJS) $(JLDFLAGS) $(LIBS) @!\ @!\ InstallProgram(program,$(BINDIR)) @!\ InstallManPage(program,$(MANSRC)) @!\ @@ -176,7 +176,7 @@ AllTargetProgram(program) @!\ @!\ program: $(OBJS1) @@\ RemoveTargetProgram($@) @@\ - $(CC) -o $@ $(OBJS1) $(JLDFLAGS) $(LIBS) @!\ + $(CC) -o $@$(_EXE) $(OBJS1) $(JLDFLAGS) $(LIBS) @!\ @!\ InstallProgram(program,$(BINDIR)) @!\ InstallManPage(program,$(MANSRC)) @!\ @@ -200,7 +200,7 @@ AllTargetProgram(program) @!\ @!\ program: $(OBJS2) @@\ RemoveTargetProgram($@) @@\ - $(CC) -o $@ $(OBJS2) $(JLDFLAGS) $(LIBS) @!\ + $(CC) -o $@$(_EXE) $(OBJS2) $(JLDFLAGS) $(LIBS) @!\ @!\ InstallProgram(program,$(BINDIR)) @!\ InstallManPage(program,$(MANSRC)) @@ -221,7 +221,7 @@ AllTargetProgram(program) @!\ @!\ program: $(OBJS3) @@\ RemoveTargetProgram($@) @@\ - $(CC) -o $@ $(OBJS3) $(JLDFLAGS) $(LIBS) @!\ + $(CC) -o $@$(_EXE) $(OBJS3) $(JLDFLAGS) $(LIBS) @!\ @!\ InstallProgram(program,$(BINDIR)) @!\ InstallManPage(program,$(MANSRC)) -- cgit v1.2.3 From d4b7a140ab4af95a21772c4cf4a59eb52ca1fcf8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 1 Mar 2011 21:02:51 +0000 Subject: Tests aimed at substituting commands must take into account a possible suffix like ".exe". git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@95 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Loc.U | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index eecb81a..bc378ec 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -298,7 +298,7 @@ for file in $trylist; do esac done case "$egrep" in -egrep) +egrep$_exe) echo "Substituting grep for egrep." egrep=$grep _egrep=$_grep @@ -306,7 +306,7 @@ egrep) esac @if ln case "$ln" in -ln) +ln$_exe) echo "Substituting cp for ln." ln=$cp _ln=$_cp @@ -315,7 +315,7 @@ esac @end @if make || gmake case "$make" in -make) +make$_exe) case "$gmake" in gmake) echo "I can't find make or gmake, and my life depends on it." >&4 @@ -326,7 +326,7 @@ make) ;; esac case "$gmake" in -gmake) ;; +gmake$_exe) ;; *) ?X: We can't have osname yet. ?X: On Stratus VOS, assume that gmake, if found, is definitely GNU make @@ -344,7 +344,7 @@ esac ?LINT: extern _msgfmt ?LINT: change _gmsgfmt case "$gmsgfmt" in -gmsgfmt) +gmsgfmt$_exe) echo "Substituting msgfmt for gmsgfmt." gmsgfmt=$msgfmt _gmsgfmt=$_msgfmt @@ -364,7 +364,7 @@ esac @if xgettext ?LINT: change _xgettext case "$xgettext" in -xgettext) +xgettext$_exe) xgettext=":" _xgettext=":" ;; @@ -388,8 +388,9 @@ xgettext) esac @end case "$test" in -test) +test|test$_exe) echo "Hopefully test is built into your sh." + test=test ;; *) if `sh -c "PATH= test true" >/dev/null 2>&1`; then @@ -406,8 +407,9 @@ test) esac ?LINT:change n c case "$echo" in -echo) +echo|echo$_exe) echo "Hopefully echo is built into your sh." + echo=echo ;; ?X: For those rare cases where we don't need $echo... '') ;; -- cgit v1.2.3 From b4d06bb36dc022e42201ad5f3f1afd2abda18c40 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 20 Jul 2011 19:23:26 +0000 Subject: Added check for __builtin_memcmp(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@96 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_built_memcmp.U | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 mcon/U/d_built_memcmp.U diff --git a/MANIFEST b/MANIFEST index 586a921..392373d 100644 --- a/MANIFEST +++ b/MANIFEST @@ -171,6 +171,7 @@ mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? +mcon/U/d_built_memcmp.U Is __builtin_memcmp() available? mcon/U/d_built_popcount.U Is __builtin_popcount() available? mcon/U/d_byacc.U Is byacc available? mcon/U/d_bzero.U Do we have bzero() or memset()? diff --git a/mcon/U/d_built_memcmp.U b/mcon/U/d_built_memcmp.U new file mode 100644 index 0000000..a96a869 --- /dev/null +++ b/mcon/U/d_built_memcmp.U @@ -0,0 +1,37 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_built_memcmp: Trylink cat +?MAKE: -pick add $@ %< +?S:d_built_memcmp: +?S: This variable conditionally defines the HAS_BUILTIN_MEMCMP symbol, which +?S: indicates to the C program that __builtin_memcmp is available. +?S:. +?C:HAS_BUILTIN_MEMCMP: +?C: This symbol, if defined, indicates that __builtin_memcmp routine is +?C: available to compare memory buffers. +?C:. +?H:#$d_built_memcmp HAS_BUILTIN_MEMCMP /**/ +?H:. +?LINT:set d_built_memcmp +: check for __builtin_memcmp +$cat >try.c < Date: Thu, 25 Aug 2011 09:54:29 +0000 Subject: Removed spurious white space on ?H: line. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@97 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_dbl_dig.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_dbl_dig.U b/mcon/U/d_dbl_dig.U index aa53e73..759aa82 100644 --- a/mcon/U/d_dbl_dig.U +++ b/mcon/U/d_dbl_dig.U @@ -28,7 +28,7 @@ ?C: of significant digits in a double precision number. If this ?C: symbol is not defined, a guess of 15 is usually pretty good. ?C:. -?H:#$d_dbl_dig HAS_DBL_DIG /* */ +?H:#$d_dbl_dig HAS_DBL_DIG /**/ ?H:. ?F:!dbl_dig.c ?LINT:set d_dbl_dig -- cgit v1.2.3 From 447c9e63aea7e3dd14c3821336774d4acf2ab573 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 3 Nov 2011 19:28:48 +0000 Subject: Also attempt to locate libraries in /lib32 or /lib64. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@98 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/libpth.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/libpth.U b/mcon/U/libpth.U index d245bf7..679b016 100644 --- a/mcon/U/libpth.U +++ b/mcon/U/libpth.U @@ -75,7 +75,8 @@ ?X: /usr/shlib is for OSF/1 systems. ?INIT:test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth" ?INIT:test -f /shlib/libc.so && glibpth="/shlib $glibpth" -?INIT: +?X: /lib32 and /lib64 are for Linux systems running both 32- and 64-bit programs +?INIT:glibpth="$glibpth /lib32 /lib64" ?INIT:: Private path used by Configure to find libraries. Its value ?INIT:: is prepended to libpth. This variable takes care of special ?INIT:: machines, like the mips. Usually, it should be empty. -- cgit v1.2.3 From 647979715ecc888fea05d22ddb65e1be324c7916 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 5 Nov 2011 13:27:37 +0000 Subject: Removed obsolete (and wrong) SingleProgramTarget(). Added NormalProgramLibTarget(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@99 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index b3b4f8b..4e38e5a 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -101,6 +101,7 @@ local_realclean:: @@\ if test -f program^^^$(_EXE); then \ @@\ $(MV) program^^^$(_EXE) program^^~^^^$(_EXE); fi + /* * NormalProgramTarget: * Generate rules to compile and link the indicated program; since @@ -119,12 +120,23 @@ program: objects @@\ /* - * SingleProgramTarget: - * Obsolete version of NormalProgramTarget that doesn't have - * deplibs. + * NormalProgramLibTarget: + * Generate rules to compile and link the indicated program; since + * it does not use any default object files, it may be used for + * multiple programs in the same Jmakefile. + * The ``libs'' argument is used to depend on locally built libraries, + * in te same Jmakefile. */ -#define SingleProgramTarget(program,objects,libs) \ -NormalProgramTarget(program,objects,libs) +#define NormalProgramLibTarget(program,sources,objects,libs) @!\ +++OBJECTS objects @!\ +++SOURCES sources @!\ +NormalObjectRule() @!\ +AllTargetProgram(program) @!\ + @!\ +program: objects libs @@\ + RemoveTargetProgram($@) @@\ + $(CC) -o $@$(_EXE) objects $(JLDFLAGS) libs $(LIBS) @!\ + /* * SimpleProgramTarget: @@ -136,7 +148,6 @@ NormalProgramTarget(program,objects,libs) NormalProgramTarget(program,program.c,program.o) - /* * ComplexProgramTarget: * Generate rules for compiling and linking the program specified by -- cgit v1.2.3 From 0dcd353f1a94624148f887bca7537ee338393104 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 14 Nov 2011 17:14:43 +0000 Subject: Added checks for linker-defined symbols "etext" and "end". git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@100 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_end_symbol.U | 41 +++++++++++++++++++++++++++++++++++++++++ mcon/U/d_etext_symbol.U | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 mcon/U/d_end_symbol.U create mode 100644 mcon/U/d_etext_symbol.U diff --git a/mcon/U/d_end_symbol.U b/mcon/U/d_end_symbol.U new file mode 100644 index 0000000..5dfe8b6 --- /dev/null +++ b/mcon/U/d_end_symbol.U @@ -0,0 +1,41 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_select.U,v $ +?RCS: Revision 3.0 1993/08/18 12:07:02 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_end_symbol: Trylink cat +?MAKE: -pick add $@ %< +?S:d_end_symbol: +?S: This variable conditionally defines HAS_END_SYMBOL if the +?S: linker-defined symbol "end" is available to compute the end +?S: address of the program's BSS segment. +?S:. +?C:HAS_END_SYMBOL: +?C: This symbol, if defined, indicates that the C program can declare +?C: extern const int end; +?C: and then use &end to know the end of the BSS segment. +?C:. +?H:#$d_end_symbol HAS_END_SYMBOL /**/ +?H:. +?LINT:set d_end_symbol +: see if the end symbol exists +$cat >try.c <> 12; +} +EOC +cyn="whether your linker defines the end symbol" +set d_end_symbol +eval $trylink + diff --git a/mcon/U/d_etext_symbol.U b/mcon/U/d_etext_symbol.U new file mode 100644 index 0000000..47c01e5 --- /dev/null +++ b/mcon/U/d_etext_symbol.U @@ -0,0 +1,41 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_select.U,v $ +?RCS: Revision 3.0 1993/08/18 12:07:02 ram +?RCS: Baseline for dist 3.0 netwide release. +?RCS: +?MAKE:d_etext_symbol: Trylink cat +?MAKE: -pick add $@ %< +?S:d_etext_symbol: +?S: This variable conditionally defines HAS_ETEXT_SYMBOL if the +?S: linker-defined symbol "etext" is available to compute the end +?S: address of the program's text segment. +?S:. +?C:HAS_ETEXT_SYMBOL: +?C: This symbol, if defined, indicates that the C program can declare +?C: extern const int etext; +?C: and then use &etext to know the end of the text segment. +?C:. +?H:#$d_etext_symbol HAS_ETEXT_SYMBOL /**/ +?H:. +?LINT:set d_etext_symbol +: see if the etext symbol exists +$cat >try.c <> 12; +} +EOC +cyn="whether your linker defines the etext symbol" +set d_etext_symbol +eval $trylink + -- cgit v1.2.3 From 1dc68da7c90beefb5f0ce5b94c7eea3fe2a434fe Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 14 Nov 2011 17:15:13 +0000 Subject: Updated. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@101 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ 1 file changed, 2 insertions(+) diff --git a/MANIFEST b/MANIFEST index 392373d..1c55ed4 100644 --- a/MANIFEST +++ b/MANIFEST @@ -201,8 +201,10 @@ mcon/U/d_dlopen.U Do we have dlopen()? mcon/U/d_dosuid.U Do they want setuid emulation? mcon/U/d_drem.U Do we have drem()? mcon/U/d_dup2.U Do we have dup2()? +mcon/U/d_end_symbol.U Whether linker defines the "end" symbol mcon/U/d_eofpipe.U Will EOF be seen on closed pipes? mcon/U/d_epoll.U Can we use epoll_xxx() routines? +mcon/U/d_etext_symbol.U Whether linker defines the "etext" symbol mcon/U/d_euc2jis.U Do we have euc2jis()? mcon/U/d_fast_assert.U Can we use fast assertions? mcon/U/d_fchmod.U Do we have fchmod()? -- cgit v1.2.3 From a0eaaf3efd628510c142f38c4b723455343ed175 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 14 Nov 2011 21:37:42 +0000 Subject: Fixed metalint warning about spurious "set echo". git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@102 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Loc.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index bc378ec..b722244 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -217,7 +217,7 @@ trylist=" ?zip:zip " ?LINT: set awk ar bash bison byacc cat chgrp chmod chown \ - comm compress cp cpio cpp csh date echo emacs expr find flex \ + comm compress cp cpio cpp csh date emacs expr find flex \ gcc gmake gzip grep inews ksh less line lint lp lpr ls mail mailx \ mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee touch tr troff \ -- cgit v1.2.3 From 92423e3a5cdaade1dc3c6a3434af613d2795a116 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 14 Nov 2011 21:54:00 +0000 Subject: Added detection. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@103 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/i_alloca.U | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 mcon/U/i_alloca.U diff --git a/MANIFEST b/MANIFEST index 1c55ed4..74f7d34 100644 --- a/MANIFEST +++ b/MANIFEST @@ -450,6 +450,7 @@ mcon/U/gidtype.U What is the type of gids? mcon/U/groupstype.U What is the type for groups in getgroups()? mcon/U/h_fcntl.U Do we need to include fcntl.h? mcon/U/h_sysfile.U Do we need to include sys/file.h? +mcon/U/i_alloca.U Shall we include ? mcon/U/i_arpainet.U Shall we include ? mcon/U/i_db.U Shall we include ? mcon/U/i_dbm.U Shall we include ? diff --git a/mcon/U/i_alloca.U b/mcon/U/i_alloca.U new file mode 100644 index 0000000..4f33614 --- /dev/null +++ b/mcon/U/i_alloca.U @@ -0,0 +1,37 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: i_gdbm.U,v $ +?MAKE:i_alloca: Trylink cat +?MAKE: -pick add $@ %< +?S:i_alloca: +?S: This variable conditionally defines the I_ALLOCA symbol, which +?S: indicates to the C program that exists and should +?S: be included. +?S:. +?C:I_ALLOCA: +?C: This symbol, if defined, indicates that exists and should +?C: be included. +?C:. +?H:#$i_alloca I_ALLOCA /**/ +?H:. +?LINT:set i_alloca +: see if alloca.h is available +$cat >try.c < +int main(void) +{ + void *ret = alloca(1); + return (unsigned long) ret & 0x1; +} +EOC +set i_alloca +eval $trylink + -- cgit v1.2.3 From 6a9d0870219d8590bac17037f72b8f4287a71c8a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 14 Nov 2011 23:31:52 +0000 Subject: Moved regcomp() test to a separate unit since modern code should now only use this POSIX routine and no longer rely on obsolete regcmp() or re_comp() routines. Cleaned up previously added units to remove unused RCS logs. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@104 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 3 ++- mcon/U/d_end_symbol.U | 4 ---- mcon/U/d_etext_symbol.U | 4 ---- mcon/U/d_regcmp.U | 30 +++++++----------------------- mcon/U/d_regcomp.U | 44 ++++++++++++++++++++++++++++++++++++++++++++ mcon/U/i_alloca.U | 1 - 6 files changed, 53 insertions(+), 33 deletions(-) create mode 100644 mcon/U/d_regcomp.U diff --git a/MANIFEST b/MANIFEST index 74f7d34..b7dd988 100644 --- a/MANIFEST +++ b/MANIFEST @@ -324,7 +324,8 @@ mcon/U/d_rdchk.U Is rdchk() there to check for input? mcon/U/d_readdir.U Do we have readdir()? mcon/U/d_readlink.U Do we have readlink()? mcon/U/d_recvmsg.U Do we have recvmsg()? -mcon/U/d_regcmp.U Do we have regcmp()? +mcon/U/d_regcmp.U Do we have regcmp() or re_comp()? +mcon/U/d_regcomp.U Do we have POSIX regcomp()? mcon/U/d_regparm.U Can we use __attribute__((__regparm__(n)))? mcon/U/d_rename.U Do we have rename()? mcon/U/d_rmdir.U Do we have rmdir()? diff --git a/mcon/U/d_end_symbol.U b/mcon/U/d_end_symbol.U index 5dfe8b6..591ba0c 100644 --- a/mcon/U/d_end_symbol.U +++ b/mcon/U/d_end_symbol.U @@ -8,10 +8,6 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: $Log: d_select.U,v $ -?RCS: Revision 3.0 1993/08/18 12:07:02 ram -?RCS: Baseline for dist 3.0 netwide release. -?RCS: ?MAKE:d_end_symbol: Trylink cat ?MAKE: -pick add $@ %< ?S:d_end_symbol: diff --git a/mcon/U/d_etext_symbol.U b/mcon/U/d_etext_symbol.U index 47c01e5..1e50671 100644 --- a/mcon/U/d_etext_symbol.U +++ b/mcon/U/d_etext_symbol.U @@ -8,10 +8,6 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: $Log: d_select.U,v $ -?RCS: Revision 3.0 1993/08/18 12:07:02 ram -?RCS: Baseline for dist 3.0 netwide release. -?RCS: ?MAKE:d_etext_symbol: Trylink cat ?MAKE: -pick add $@ %< ?S:d_etext_symbol: diff --git a/mcon/U/d_regcmp.U b/mcon/U/d_regcmp.U index 50fe24c..cff5054 100644 --- a/mcon/U/d_regcmp.U +++ b/mcon/U/d_regcmp.U @@ -15,13 +15,11 @@ ?RCS: Revision 3.0 1993/08/18 12:06:53 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_regcmp d_re_comp d_regcomp: Csym cat +?MAKE:d_regcmp d_re_comp: Csym cat ?MAKE: -pick add $@ %< -?S:d_regcomp: -?S: This variable conditionally defines the HAS_REGCOMP symbol, which -?S: indicates to the C program that the regcomp() routine is available -?S: for regular patern matching (usally on POSIX.2 conforming systems). -?S:. +?X: +?X: Modern code should use POSIX's regcomp(). +?X: ?S:d_regcmp: ?S: This variable conditionally defines the HAS_REGCMP symbol, which ?S: indicates to the C program that the regcmp() routine is available @@ -33,11 +31,6 @@ ?S: for regular patern matching (usally on BSD). If so, it is likely that ?S: re_exec() exists. ?S:. -?C:HAS_REGCOMP (REGCOMP): -?C: This symbol, if defined, indicates that the regcomp() routine is -?C: available to do some regular patern matching (usually on POSIX.2 -?C: conforming systems). -?C:. ?C:HAS_REGCMP (REGCMP): ?C: This symbol, if defined, indicates that the regcmp() routine is ?C: available to do some regular patern matching (usually on System V). @@ -47,34 +40,25 @@ ?C: available to do some regular patern matching (usually on BSD). If so, ?C: it is likely that re_exec() be available. ?C:. -?H:#$d_regcomp HAS_REGCOMP /* POSIX.2 */ ?H:#$d_regcmp HAS_REGCMP /* sysV */ ?H:#$d_re_comp HAS_RECOMP /* BSD */ ?H:. ?T:val -: see if regcomp, regcmp, or re_comp exist, for regular pattern matching +: see if regcmp or re_comp exist, for regular pattern matching echo " " -if set regcomp val -f d_regcomp; eval $csym; $val; then - echo 'regcomp() found.' >&4 - d_regcomp="$define" - d_regcmp="$undef" - d_re_comp="$undef" -elif set regcmp val -f d_regcmp; eval $csym; $val; then +if set regcmp val -f d_regcmp; eval $csym; $val; then echo 'regcmp() found.' >&4 d_regcmp="$define" - d_regcomp="$undef" d_re_comp="$undef" elif set re_comp val -f d_re_comp; eval $csym; $val; then echo 're_comp() found, assuming re_exec() also exists.' >&4 d_re_comp="$define" - d_regcomp="$undef" d_regcmp="$undef" else $cat >&4 <try.c < +int main(void) +{ + int ret = 0; + regex_t re; + ret |= regcomp(&re, ".", + REG_EXTENDED | REG_NOSUB | REG_ICASE | REG_NEWLINE); + return ret ? 0 : 1; +} +EOC +cyn=regcomp +set d_regcomp +eval $trylink + diff --git a/mcon/U/i_alloca.U b/mcon/U/i_alloca.U index 4f33614..5105031 100644 --- a/mcon/U/i_alloca.U +++ b/mcon/U/i_alloca.U @@ -8,7 +8,6 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: $Log: i_gdbm.U,v $ ?MAKE:i_alloca: Trylink cat ?MAKE: -pick add $@ %< ?S:i_alloca: -- cgit v1.2.3 From 90f8fcc60f609a9a65fec6eb69da2a004d0ed933 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 23 Nov 2011 07:25:16 +0000 Subject: Removed obsolete SOCKET symbols. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@105 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_socket.U | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mcon/U/d_socket.U b/mcon/U/d_socket.U index 29082e3..c785cfb 100644 --- a/mcon/U/d_socket.U +++ b/mcon/U/d_socket.U @@ -39,15 +39,15 @@ ?S:sockethdr: ?S: This variable has any cpp -I flags needed for socket support. ?S:. -?C:HAS_SOCKET (SOCKET): +?C:HAS_SOCKET: ?C: This symbol, if defined, indicates that the BSD socket interface is ?C: supported. ?C:. -?C:HAS_SOCKETPAIR (SOCKETPAIR): +?C:HAS_SOCKETPAIR: ?C: This symbol, if defined, indicates that the BSD socketpair() call is ?C: supported. ?C:. -?C:USE_OLDSOCKET (OLDSOCKET): +?C:USE_OLDSOCKET: ?C: This symbol, if defined, indicates that the 4.1c BSD socket interface ?C: is supported instead of the 4.2/4.3 BSD socket interface. For instance, ?C: there is no setsockopt() call. -- cgit v1.2.3 From ed39c8082e70a1e858ac82c86191c4da800cd550 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 25 Nov 2011 20:36:12 +0000 Subject: On Windows, install.SH is read install.sh and can cause a default make rule to trigger, so we must protect the install target. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@106 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index 4e38e5a..e81d291 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -641,7 +641,9 @@ local_clobber:: local_realclean @!\ */ #define InstallTarget() @!\ ?SUBDIRS:install:: local_install sub_install @!\ -%SUBDIRS:install:: local_install @!\ +%SUBDIRS:install:: local_install @@\ + @exit 0 @!\ + @!\ ?SUBDIRS:install.man:: maybe_install.man sub_install.man @!\ %SUBDIRS:install.man:: maybe_install.man @!\ ?SUBDIRS:deinstall:: sub_deinstall local_deinstall @!\ -- cgit v1.2.3 From 18a561d68ca484eddc51ad7a0be6ee96dc0aa4aa Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 13 Dec 2011 17:42:02 +0000 Subject: Added /usr/lib/*-gnu to the default library path. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@107 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/libpth.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/libpth.U b/mcon/U/libpth.U index 679b016..4024cb7 100644 --- a/mcon/U/libpth.U +++ b/mcon/U/libpth.U @@ -76,7 +76,8 @@ ?INIT:test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth" ?INIT:test -f /shlib/libc.so && glibpth="/shlib $glibpth" ?X: /lib32 and /lib64 are for Linux systems running both 32- and 64-bit programs -?INIT:glibpth="$glibpth /lib32 /lib64" +?X: /usr/lib/i386-linux-gnu/ is used on Debian by the libc6-dev package +?INIT:glibpth="$glibpth /lib32 /lib64 "`ls -1d /usr/lib/*-gnu 2>/dev/null` ?INIT:: Private path used by Configure to find libraries. Its value ?INIT:: is prepended to libpth. This variable takes care of special ?INIT:: machines, like the mips. Usually, it should be empty. -- cgit v1.2.3 From 0cc92eea34ab50900baab569c7a5d384396a6ff2 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 27 Dec 2011 22:13:13 +0000 Subject: Added check for atomic memory operations. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@108 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_sync_atomic.U | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 mcon/U/d_sync_atomic.U diff --git a/MANIFEST b/MANIFEST index b7dd988..6851acf 100644 --- a/MANIFEST +++ b/MANIFEST @@ -172,6 +172,7 @@ mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? mcon/U/d_built_memcmp.U Is __builtin_memcmp() available? +mcon/U/d_sync_atomic.U Are __sync_synchronize() and friends available? mcon/U/d_built_popcount.U Is __builtin_popcount() available? mcon/U/d_byacc.U Is byacc available? mcon/U/d_bzero.U Do we have bzero() or memset()? diff --git a/mcon/U/d_sync_atomic.U b/mcon/U/d_sync_atomic.U new file mode 100644 index 0000000..4d55862 --- /dev/null +++ b/mcon/U/d_sync_atomic.U @@ -0,0 +1,42 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sync_atomic: Trylink cat +?MAKE: -pick add $@ %< +?S:d_sync_atomic: +?S: This variable conditionally defines the HAS_SYNC_ATOMIC symbol, which +?S: indicates to the C program that __sync_xxx() atomic operations are +?S: made available by the compiler. +?S:. +?C:HAS_SYNC_ATOMIC: +?C: This symbol, if defined, indicates that __sync_xxx() atomic operations +?C: are made available by the compiler, namely __sync_synchronize() to +?C: issue a memory barrieer, __sync_bool_compare_and_swap() for issuing a +?C: test-and-set and __sync_fetch_and_add() for atomic increases of values. +?C:. +?H:#$d_sync_atomic HAS_SYNC_ATOMIC /**/ +?H:. +?LINT:set d_sync_atomic +: check for __sync_synchronize and friends +$cat >try.c < Date: Wed, 28 Dec 2011 20:49:26 +0000 Subject: Added mcon/U/i_pthread.U. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@109 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/i_pthread.U | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 mcon/U/i_pthread.U diff --git a/MANIFEST b/MANIFEST index 6851acf..5034c49 100644 --- a/MANIFEST +++ b/MANIFEST @@ -460,6 +460,7 @@ mcon/U/i_dirent.U Shall we include mcon/U/i_dld.U Shall we include ? mcon/U/i_dlfcn.U Shall we include ? mcon/U/i_execinfo.U Shall we include ? +mcon/U/i_pthread.U Shall we include ? mcon/U/i_fcntl.U Shall we include ? mcon/U/i_float.U Shall we include ? mcon/U/i_gdbm.U Shall we include ? diff --git a/mcon/U/i_pthread.U b/mcon/U/i_pthread.U new file mode 100644 index 0000000..1e2305d --- /dev/null +++ b/mcon/U/i_pthread.U @@ -0,0 +1,26 @@ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_pthread: Inhdr +?MAKE: -pick add $@ %< +?S:i_pthread: +?S: This variable conditionally defines the I_PTHREAD symbol, and indicates +?S: whether a C program may include , for POSIX threads. +?S:. +?C:I_PTHREAD: +?C: This symbol, if defined, indicates to the C program that it should +?C: include for POSIX threads. +?C:. +?H:#$i_pthread I_PTHREAD /**/ +?H:. +?LINT:set i_pthread +: see if this is a pthread.h system +set pthread.h i_pthread +eval $inhdr + -- cgit v1.2.3 From aa7b5a64b7c920b133666189450c815165b3c6d6 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 30 Dec 2011 10:45:13 +0000 Subject: Complexify code testing for bcopy() to avoid gcc optimizing it away. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@110 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_bcopy.U | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/mcon/U/d_bcopy.U b/mcon/U/d_bcopy.U index 2daad18..60b8bea 100644 --- a/mcon/U/d_bcopy.U +++ b/mcon/U/d_bcopy.U @@ -39,13 +39,27 @@ ?M:. ?LINT:set d_bcopy : see if bcopy exists +?X: Test is over-complex to avoid gcc optimizing bcopy() away. $cat >try.c < +static void +init_data(char *a, unsigned len) +{ + unsigned i; + for (i = 0; i < len; i++) + a[i] = i * 2 + 1; +} +static void +recopy_data(char *src, char *dst, unsigned len) +{ + bcopy(&src[3], &dst[0], len - 3); +} int main(void) { - static int src, dst; - bcopy(&src, &dst, sizeof(dst)); - return 0; + static char src[20], dst[20]; + init_data(src, sizeof src); + recopy_data(src, dst, sizeof src); + return dst[0] + dst[1]; } EOC cyn=bcopy -- cgit v1.2.3 From 61d6b759ebf0f6a6936f990ff84364e88c483aff Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 28 Jan 2012 12:43:48 +0000 Subject: Added mcon/U/d_mempcpy.U. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@111 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 7 +++++-- mcon/U/d_mempcpy.U | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 mcon/U/d_mempcpy.U diff --git a/MANIFEST b/MANIFEST index 5034c49..8a4bb83 100644 --- a/MANIFEST +++ b/MANIFEST @@ -172,7 +172,6 @@ mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? mcon/U/d_built_memcmp.U Is __builtin_memcmp() available? -mcon/U/d_sync_atomic.U Are __sync_synchronize() and friends available? mcon/U/d_built_popcount.U Is __builtin_popcount() available? mcon/U/d_byacc.U Is byacc available? mcon/U/d_bzero.U Do we have bzero() or memset()? @@ -282,6 +281,7 @@ mcon/U/d_memchr.U Do we have memchr()? mcon/U/d_memcmp.U Do we have memcmp()? mcon/U/d_memcpy.U Do we have memcpy()? mcon/U/d_memmove.U Do we have memmove()? +mcon/U/d_mempcpy.U Do we have mempcpy()? mcon/U/d_memset.U Do we have memset()? mcon/U/d_mkdir.U Do we have mkdir()? mcon/U/d_mkfifo.U Do we have mkfifo()? @@ -338,6 +338,7 @@ mcon/U/d_sanemcmp.U Can we compare 8th bit in chars with memcmp()? mcon/U/d_sbrk.U Do we have sbrk()? mcon/U/d_scandir.U Do we have scandir()? mcon/U/d_scannl.U Does scanf() groks '\n' correctly? +mcon/U/d_sched_yield.U Do we have sched_yield()? mcon/U/d_scorfl.U Keep scoreboards by full name? mcon/U/d_select.U Do we have select()? mcon/U/d_sem.U Do we have full sem(2) support? @@ -405,6 +406,7 @@ mcon/U/d_strtoul.U Do we have strtoul()? mcon/U/d_strxfrm.U Do we have strxfrm()? mcon/U/d_su_chown.U Do we need to be root to do a chown? mcon/U/d_symlink.U Does symlink() exist? +mcon/U/d_sync_atomic.U Are __sync_synchronize() and friends available? mcon/U/d_syscall.U Do we have syscall()? mcon/U/d_sysconf.U Do we have sysconf()? mcon/U/d_sysctl.U Do we have sysctl()? @@ -460,7 +462,6 @@ mcon/U/i_dirent.U Shall we include mcon/U/i_dld.U Shall we include ? mcon/U/i_dlfcn.U Shall we include ? mcon/U/i_execinfo.U Shall we include ? -mcon/U/i_pthread.U Shall we include ? mcon/U/i_fcntl.U Shall we include ? mcon/U/i_float.U Shall we include ? mcon/U/i_gdbm.U Shall we include ? @@ -488,8 +489,10 @@ mcon/U/i_netroute.U Can we include ? mcon/U/i_niin.U Shall we include ? mcon/U/i_niip.U Shall we include ? mcon/U/i_poll.U Shall we include ? +mcon/U/i_pthread.U Shall we include ? mcon/U/i_pwd.U Shall we include ? mcon/U/i_regex.U Shall we include ? +mcon/U/i_sched.U Shall we include ? mcon/U/i_sfio.U Shall we include ? mcon/U/i_stddef.U Shall we include ? mcon/U/i_stdlib.U Shall we include ? diff --git a/mcon/U/d_mempcpy.U b/mcon/U/d_mempcpy.U new file mode 100644 index 0000000..a4a1081 --- /dev/null +++ b/mcon/U/d_mempcpy.U @@ -0,0 +1,39 @@ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_mempcpy: Trylink cat +?MAKE: -pick add $@ %< +?S:d_mempcpy: +?S: This variable conditionally defines the HAS_MEMPCPY symbol, which +?S: indicates to the C program that the mempcpy() routine is available +?S: to copy blocks of memory and returns a pointer past the last written +?S: byte. +?S:. +?C:HAS_MEMPCPY +?C: This symbol, if defined, indicates that the mempcpy routine is available +?C: to copy blocks of memory, returning a pointer past the last written byte. +?C:. +?H:#$d_mempcpy HAS_MEMPCPY /**/ +?H:. +?LINT:set d_mempcpy +: see if mempcpy exists +$cat >try.c < +int main(void) +{ + static char src, dst; + void *p; + p = mempcpy(&dst, &src, sizeof(dst)); + return p ? 0 : 1; +} +EOC +cyn=mempcpy +set d_mempcpy +eval $trylink + -- cgit v1.2.3 From 71f60315cf4902fdeac4ad87ad94517ca019bc03 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 28 Jan 2012 12:57:19 +0000 Subject: Switched to using Getopt::Std. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@112 2592e710-e01b-42a5-8df0-11608a6cc53d --- bin/perload | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/perload b/bin/perload index a0ed31c..4dc77c2 100755 --- a/bin/perload +++ b/bin/perload @@ -37,8 +37,8 @@ $current_package = 'main'; # Current package $init_emitted = 0; # True when dataloading stamp was emitted $in_function = 0; -require 'getopt.pl'; -&Getopt; +use Getopt::Std; +getopts("ot"); while (<>) { if ($. == 1 && /^(:|#).*perl/) { # Invocation stub -- cgit v1.2.3 From cd24ec3008373112ff8d883cc3596756498f01d4 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 28 Jan 2012 12:59:24 +0000 Subject: Handle modern #define REVISION lines. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@113 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/patchlevel.U | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/mcon/U/patchlevel.U b/mcon/U/patchlevel.U index 18a3f98..e0bb7cf 100644 --- a/mcon/U/patchlevel.U +++ b/mcon/U/patchlevel.U @@ -36,10 +36,23 @@ if $test -r $rsrc/patchlevel.h;then else patchlevel=0 fi +?X: +?X: Can handle either one of: +?X: +?X: #define REVISION word +?X: #define REVISION "$Revision$" +?X: if $test -r $rsrc/revision.h;then revision=`awk \ '/^#[ ]*define[ ][ ]*REVISION/ {print $3}' \ < $rsrc/revision.h` + case "$revision" in + '"$Revision:') + revision=`awk \ + '/^#[ ]*define[ ][ ]*REVISION/ {print $4}' \ + < $rsrc/revision.h` + ;; + esac else revision=0 fi -- cgit v1.2.3 From 7bbafe5434e6634e2e1b3d3126e0445de217d8b2 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 28 Jan 2012 13:01:37 +0000 Subject: Switched to Getopt::Std. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@114 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/mconfig.SH | 5 +++-- mcon/mlint.SH | 5 +++-- mcon/mxref.SH | 5 +++-- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index 18e09dc..c9c295f 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -66,8 +66,9 @@ $startperl $spitshell >>mconfig <<'!NO!SUBS!' chop($date = `date`); &profile; # Read ~/.dist_profile -require 'getopts.pl'; -&usage unless &Getopts("dhkmostvwGMVL:"); + +use Getopt::Std; +&usage unless getopts("dhkmostvwGMVL:"); $MC = $opt_L if $opt_L; # May override public library path $MC = &tilda_expand($MC); # ~name expansion diff --git a/mcon/mlint.SH b/mcon/mlint.SH index e9c9f4c..20a96a1 100755 --- a/mcon/mlint.SH +++ b/mcon/mlint.SH @@ -58,8 +58,9 @@ $startperl $spitshell >>mlint <<'!NO!SUBS!' &profile; # Read ~/.dist_profile -require 'getopts.pl'; -&usage unless &Getopts("hklVL:"); + +use Getopt::Std; +&usage unless getopts("hklVL:"); if ($opt_V) { print STDERR "metalint $version-$revision\n"; diff --git a/mcon/mxref.SH b/mcon/mxref.SH index 81d8a78..5c45c1e 100755 --- a/mcon/mxref.SH +++ b/mcon/mxref.SH @@ -58,8 +58,9 @@ $startperl $spitshell >>mxref <<'!NO!SUBS!' &profile; # Read ~/.dist_profile -require 'getopts.pl'; -&usage unless &Getopts("df:hkmsVL:"); + +use Getopt::Std; +&usage unless getopts("df:hkmsVL:"); chop($date = `date`); chop($WD = `pwd`); # Working directory -- cgit v1.2.3 From 7d48ec10a3a13b12e5bafba199b27307e9d38c7c Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 28 Jan 2012 13:14:02 +0000 Subject: Make sure $file starts with a letter to avoid regexp warning in /\b$file/. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@115 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/pl/lint.pl | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index 1e435bf..1e4cad3 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -812,8 +812,10 @@ sub p_body { # Record file as used. Later on, we will make sure we had the right # to use that file: either we are in the unit that defines it, or we # include the unit that creates it in our dependencies, relying on ?F:. - $fileused{$unit} .= "$file " unless - $filetmp{$file} || $fileused{$unit} =~ /\b$file\b/; + if ($file =~ /^\w/) { + $fileused{$unit} .= "$file " unless + $filetmp{$file} || $fileused{$unit} =~ /\b$file\b/; + } # Mark temporary file as being used, to spot useless local declarations $filetmp{$file} .= ' used' if defined $filetmp{$file} && $filetmp{$file} !~ /\bused/; @@ -827,8 +829,10 @@ sub p_body { s!(if|\|\||&&)\s+([^\$/`\s;]+)\s*!: ! # if prog, || prog, && prog ) { $file = $2; - $filemisused{$unit} .= "$file " unless - $filetmp{$file} || $filemisused{$unit} =~ /\b$file\b/; + if ($file =~ /^\w/) { + $filemisused{$unit} .= "$file " unless + $filetmp{$file} || $filemisused{$unit} =~ /\b$file\b/; + } # Temporary files should be used with ./ anyway $filetmp{$file} .= ' misused' if defined $filetmp{$file} && $filetmp{$file} !~ /\bmisused/; -- cgit v1.2.3 From 1ecc1fbfca2701191007f841f5eaace5621c1c45 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 28 Jan 2012 13:15:12 +0000 Subject: Fixed metalint warnings. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@116 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_mempcpy.U | 2 +- mcon/U/patchlevel.U | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_mempcpy.U b/mcon/U/d_mempcpy.U index a4a1081..8e601b7 100644 --- a/mcon/U/d_mempcpy.U +++ b/mcon/U/d_mempcpy.U @@ -15,7 +15,7 @@ ?S: to copy blocks of memory and returns a pointer past the last written ?S: byte. ?S:. -?C:HAS_MEMPCPY +?C:HAS_MEMPCPY: ?C: This symbol, if defined, indicates that the mempcpy routine is available ?C: to copy blocks of memory, returning a pointer past the last written byte. ?C:. diff --git a/mcon/U/patchlevel.U b/mcon/U/patchlevel.U index e0bb7cf..e7a9acb 100644 --- a/mcon/U/patchlevel.U +++ b/mcon/U/patchlevel.U @@ -17,6 +17,7 @@ ?RCS: ?MAKE:patchlevel revision: package baserev test rsrc ?MAKE: -pick add $@ %< +?T:Revision ?S:patchlevel: ?S: The patchlevel level of this package. ?S: The value of patchlevel comes from the patchlevel.h file. -- cgit v1.2.3 From bb7c0183e14e22ac660825a2ea625a5d5e419953 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 29 Jan 2012 21:27:40 +0000 Subject: Regenerated. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@117 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 104 ++++++++++++++++++++++++++++++++++++++++---------------------- 1 file changed, 68 insertions(+), 36 deletions(-) diff --git a/Configure b/Configure index a43c6ec..40a8eee 100755 --- a/Configure +++ b/Configure @@ -18,7 +18,7 @@ # $Id: Head.U 41 2010-11-28 00:21:26Z rmanfredi $ # -# Generated on Mon Nov 29 00:07:52 CET 2010 [metaconfig 3.5-49] +# Generated on Sun Jan 29 22:26:48 CET 2012 [metaconfig 3.5-116] cat >c1$$ </dev/null` : Private path used by Configure to find libraries. Its value : is prepended to libpth. This variable takes care of special : machines, like the mips. Usually, it should be empty. @@ -429,10 +434,10 @@ case "$sh" in sh="$xxx" break elif test -f "$xxx$_exe"; then - sh="$xxx" + sh="$xxx$_exe" break elif test -f "$xxx.exe"; then - sh="$xxx" + sh="$xxx.exe" break fi done @@ -715,7 +720,7 @@ while test $# -gt 0; do esac shift ;; - -V) echo "$me generated by metaconfig 3.5-49." >&2 + -V) echo "$me generated by metaconfig 3.5-116." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -1339,6 +1344,7 @@ cp echo expr grep +make mkdir mv rm @@ -1356,7 +1362,6 @@ less line ln mail -make more nroff perl @@ -1396,7 +1401,7 @@ for file in $loclist; do ;; *) echo "I don't know where '$file' is, and my life depends on it." >&4 - echo "Go find a public domain implementation or fix your PATH setting!" >&4 + echo "Go find a public domain implementation or fix your PATH!" >&4 exit 1 ;; esac @@ -1434,21 +1439,21 @@ for file in $trylist; do esac done case "$egrep" in -egrep) +egrep$_exe) echo "Substituting grep for egrep." egrep=$grep _egrep=$_grep ;; esac case "$ln" in -ln) +ln$_exe) echo "Substituting cp for ln." ln=$cp _ln=$_cp ;; esac case "$make" in -make) +make$_exe) case "$gmake" in gmake) echo "I can't find make or gmake, and my life depends on it." >&4 @@ -1459,11 +1464,10 @@ make) ;; esac case "$gmake" in -gmake) ;; -*) # We can't have osname yet. - if test -f "/system/gnu_library/bin/ar.pm"; then # Stratus VOS - # Assume that gmake, if found, is definitely GNU make - # and prefer it over the system make. +gmake$_exe) ;; +*) + if test -f "/system/gnu_library/bin/ar.pm"; then + : Stratus VOS echo "Substituting gmake for make." make=$gmake _make=$_gmake @@ -1471,8 +1475,9 @@ gmake) ;; ;; esac case "$test" in -test) +test|test$_exe) echo "Hopefully test is built into your sh." + test=test ;; *) if `sh -c "PATH= test true" >/dev/null 2>&1`; then @@ -1483,13 +1488,14 @@ test) ;; esac case "$echo" in -echo) +echo|echo$_exe) echo "Hopefully echo is built into your sh." + echo=echo ;; '') ;; *) echo " " -echo "Checking compatibility between $echo and builtin echo (if any)..." >&4 +echo "Checking compatibility between $_echo and builtin echo (if any)..." >&4 $echo $n "hi there$c" >foo1 echo $n "hi there$c" >foo2 if cmp foo1 foo2 >/dev/null 2>&1; then @@ -1610,8 +1616,7 @@ EOSC : determine whether symbolic links are supported echo " " -$touch blurfl -$rm -f sym +$rm -f blurfl sym if $ln -s blurfl sym > /dev/null 2>&1 && $test -f sym; then echo "Symbolic links are supported." >&4 lns="$ln -s" @@ -1836,7 +1841,8 @@ $test -z "$myuname" && myuname=`hostname 2>/dev/null` myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \ ./tr '[A-Z]' '[a-z]' | $tr $trnl ' '` newmyuname="$myuname" -$test -f "$uname$_exe" && has_uname=y +has_uname= +$test -f "$uname" && has_uname=y : Guessing of the OS name -- half the following guesses are probably wrong... : If you have better tests or hints, please send them to the metaconfig @@ -1897,7 +1903,8 @@ if $test "X$has_uname" != X; then osvers=4 elif $contains _SYSV3 /usr/include/stdio.h > /dev/null 2>&1 ; then osvers=3 - elif $contains _POSIX_SOURCE /usr/include/stdio.h > /dev/null 2>&1 ; then + elif $contains _POSIX_SOURCE /usr/include/stdio.h > /dev/null 2>&1 + then osvers=2 fi fi @@ -1925,7 +1932,10 @@ if $test "X$has_uname" != X; then osvers=`$uname -r` ;; cygwin*) osname=cygwin - osvers="$3" + osvers=`echo "$3" | sed -e 's/\(.*\)(.*/\1/'` + ;; + mingw*) osname=mingw + osvers=`echo "$3" | sed -e 's/\(.*\)(.*/\1/'` ;; *dc.osx) osname=dcosx osvers="$3" @@ -2121,6 +2131,12 @@ case "$knowitall" in *) dflt=y;; esac +saved_osname="$osname" +saved_osvers="$osvers" +tmp_n="$n" +tmp_c="$c" +tmp_sh="$sh" + : Get old answers from config file if it was generated on the same system hint=default if $test -f ../config.sh; then @@ -2133,14 +2149,19 @@ if $test -f ../config.sh; then myuname="$newmyuname" ;; *) echo "Fetching default answers from your old config.sh file..." >&4 - tmp_n="$n" - tmp_c="$c" - tmp_sh="$sh" . ../config.sh cp ../config.sh . - n="$tmp_n" - c="$tmp_c" hint=previous + case "$dflt" in + n) + echo " " + rp="Do you want further invocations to use these defaults?" + . ./myread + case "$ans" in + y*|Y*) myuname="$newmyuname";; + esac + ;; + esac ;; esac fi @@ -2148,17 +2169,12 @@ fi *) echo " " echo "Fetching default answers from $config_sh..." >&4 - tmp_n="$n" - tmp_c="$c" - tmp_sh="$sh" cd .. cp $config_sh config.sh 2>/dev/null chmod +w config.sh . ./config.sh cd UU cp ../config.sh . - n="$tmp_n" - c="$tmp_c" hint=previous ;; esac @@ -2169,9 +2185,14 @@ $test "$override" && . ./optdef.sh : Restore computed paths for file in $loclist $trylist; do - eval $file="\$_$file" + eval $file="\$_$file"$_exe done +osname="$saved_osname" +osvers="$saved_osvers" +n="$tmp_n" +c="$tmp_c" + . ./checkcc case "$targetarch" in '') ;; @@ -3856,8 +3877,7 @@ and I got the following output: EOM $cat > try.c <<'EOF' -#include -int main() { exit(0); } +int main() { return 0; } EOF dflt=y if sh -c "$cc $optimize $ccflags $ldflags -o try try.c" >>try.msg 2>&1; then @@ -4219,6 +4239,13 @@ if $test -r $rsrc/revision.h;then revision=`awk \ '/^#[ ]*define[ ][ ]*REVISION/ {print $3}' \ < $rsrc/revision.h` + case "$revision" in + '"$Revision:') + revision=`awk \ + '/^#[ ]*define[ ][ ]*REVISION/ {print $4}' \ + < $rsrc/revision.h` + ;; + esac else revision=0 fi @@ -4434,10 +4461,12 @@ find='$find' firstmakefile='$firstmakefile' flex='$flex' from='$from' +gcc='$gcc' gccosandvers='$gccosandvers' gccversion='$gccversion' glibpth='$glibpth' gmake='$gmake' +gmsgfmt='$gmsgfmt' grep='$grep' groupcat='$groupcat' gzip='$gzip' @@ -4476,6 +4505,8 @@ mansrcexp='$mansrcexp' mips_type='$mips_type' mkdir='$mkdir' more='$more' +msgfmt='$msgfmt' +msgmerge='$msgmerge' mv='$mv' mydomain='$mydomain' myhostname='$myhostname' @@ -4544,6 +4575,7 @@ usecrosscompile='$usecrosscompile' usrinc='$usrinc' uuname='$uuname' vi='$vi' +xgettext='$xgettext' xlibpth='$xlibpth' zcat='$zcat' zip='$zip' -- cgit v1.2.3 From e1ec8c92bbb57b150fabcc02ac4ca266dfb584c6 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 3 Feb 2012 16:18:39 +0000 Subject: Complexify test code to avoid gcc optimizations. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@118 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_mempcpy.U | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_mempcpy.U b/mcon/U/d_mempcpy.U index 8e601b7..a85a649 100644 --- a/mcon/U/d_mempcpy.U +++ b/mcon/U/d_mempcpy.U @@ -23,13 +23,25 @@ ?H:. ?LINT:set d_mempcpy : see if mempcpy exists +?X: +?X: Need some extra code convolutions to avoid gcc's optimizing the mempcpy() +?X: call with its built-in implementation. +?X: $cat >try.c < + +void *copy(void *d, const void *s, unsigned n) +{ + char *q = d; + const char *r = s; + return mempcpy(q + 4, r + 2, n - 1); +} + int main(void) { static char src, dst; void *p; - p = mempcpy(&dst, &src, sizeof(dst)); + p = copy(&dst, &src, sizeof(dst)); return p ? 0 : 1; } EOC -- cgit v1.2.3 From e5ba2546fbfa8348b5e8351f4674672a8cdbfd1d Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 4 Feb 2012 06:26:43 +0000 Subject: Added missing files (added to MANIFEST, but which were not committed). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@119 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_sched_yield.U | 36 ++++++++++++++++++++++++++++++++++++ mcon/U/i_sched.U | 25 +++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 mcon/U/d_sched_yield.U create mode 100644 mcon/U/i_sched.U diff --git a/mcon/U/d_sched_yield.U b/mcon/U/d_sched_yield.U new file mode 100644 index 0000000..4d4aa5c --- /dev/null +++ b/mcon/U/d_sched_yield.U @@ -0,0 +1,36 @@ +?RCS: Copyright (c) 2012, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sched_yield: Trylink cat +?MAKE: -pick add $@ %< +?S:d_sched_yield: +?S: This variable conditionally defines the HAS_SCHED_YIELD symbol, which +?S: indicates to the C program that the sched_yield() routine is available +?S: to yield the CPU. +?S:. +?C:HAS_SCHED_YIELD : +?C: This symbol, if defined, indicates that the sched_yield() routine is +?C: available to yield the CPU. +?C:. +?H:#$d_sched_yield HAS_SCHED_YIELD /**/ +?H:. +?LINT:set d_sched_yield +: see if sched_yield exists +$cat >try.c < +int main(void) +{ + static int ret; + ret |= sched_yield(); + return ret ? 0 : 1; +} +EOC +cyn=sched_yield +set d_sched_yield +eval $trylink + diff --git a/mcon/U/i_sched.U b/mcon/U/i_sched.U new file mode 100644 index 0000000..ea3cccc --- /dev/null +++ b/mcon/U/i_sched.U @@ -0,0 +1,25 @@ +?RCS: Copyright (c) 2012, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_sched: Inhdr +?MAKE: -pick add $@ %< +?S:i_sched: +?S: This variable conditionally defines the I_SCHED symbol, and indicates +?S: whether a C program may include to get sched_yield(). +?S:. +?C:I_SCHED: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get the definition of sched_yield(). +?C:. +?H:#$i_sched I_SCHED /**/ +?H:. +?LINT:set i_sched +: see if this is a sched.h system +set sched.h i_sched +eval $inhdr + -- cgit v1.2.3 From a28fa2c5a103b02529ca64b17b096b0aced46fd9 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 7 Feb 2012 17:42:35 +0000 Subject: Do not force a trailing ".exe" on discovered files, it can be harmful on Cygwin. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@120 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Loc.U | 23 ++++++++++++----------- mcon/U/Oldconfig.U | 2 +- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index b722244..66052db 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -67,7 +67,7 @@ make mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee test touch tr troff \ gmsgfmt msgfmt msgmerge xgettext \ - uname uniq uuname vi zcat zip: eunicefix n c startsh Instruct Warn + uname uniq uuname vi wc zcat zip: eunicefix n c startsh Instruct Warn ?MAKE: -pick weed $@ %< ?LINT: describe awk ar bash bison byacc cat chgrp chmod chown \ comm compress cp cpio cpp csh date echo egrep emacs expr find flex \ @@ -75,7 +75,7 @@ make mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee test touch tr troff \ gmsgfmt msgfmt msgmerge xgettext \ - uname uniq uuname vi zcat zip + uname uniq uuname vi wc zcat zip ?V::pth loclist trylist ?F:./loc ?T:thisthing thing xxx dir file say DJGPP @@ -212,6 +212,7 @@ trylist=" ?uname:uname ?uuname:uuname ?vi:vi +?wc:wc ?xgettext:xgettext ?zcat:zcat ?zip:zip @@ -222,7 +223,7 @@ trylist=" mkdir more mv nawk nm nroff perl pg pmake pr rm rmail sed sendmail \ shar sleep smail sort submit tail tar tbl tee touch tr troff \ msgfmt msgmerge \ - uname uniq uuname vi zcat zip + uname uniq uuname vi wc zcat zip pth=`echo $PATH | sed -e "s/$p_/ /g"` pth="$pth /sbin /usr/sbin /lib /usr/lib /etc" for file in $loclist; do @@ -246,7 +247,7 @@ for file in $loclist; do '') xxx=`./loc $file $file $pth`;; *) xxx=`./loc $xxx $xxx $pth`;; esac - eval $file=$xxx$_exe + eval $file=$xxx eval _$file=$xxx case "$xxx" in /*) @@ -281,7 +282,7 @@ for file in $trylist; do '') xxx=`./loc $file $file $pth`;; *) xxx=`./loc $xxx $xxx $pth`;; esac - eval $file=$xxx$_exe + eval $file=$xxx eval _$file=$xxx case "$xxx" in /*) @@ -298,7 +299,7 @@ for file in $trylist; do esac done case "$egrep" in -egrep$_exe) +egrep$_exe|egrep) echo "Substituting grep for egrep." egrep=$grep _egrep=$_grep @@ -306,7 +307,7 @@ egrep$_exe) esac @if ln case "$ln" in -ln$_exe) +ln$_exe|ln) echo "Substituting cp for ln." ln=$cp _ln=$_cp @@ -315,7 +316,7 @@ esac @end @if make || gmake case "$make" in -make$_exe) +make$_exe|make) case "$gmake" in gmake) echo "I can't find make or gmake, and my life depends on it." >&4 @@ -326,7 +327,7 @@ make$_exe) ;; esac case "$gmake" in -gmake$_exe) ;; +gmake$_exe|gmake) ;; *) ?X: We can't have osname yet. ?X: On Stratus VOS, assume that gmake, if found, is definitely GNU make @@ -344,7 +345,7 @@ esac ?LINT: extern _msgfmt ?LINT: change _gmsgfmt case "$gmsgfmt" in -gmsgfmt$_exe) +gmsgfmt$_exe|gmsgfmt) echo "Substituting msgfmt for gmsgfmt." gmsgfmt=$msgfmt _gmsgfmt=$_msgfmt @@ -364,7 +365,7 @@ esac @if xgettext ?LINT: change _xgettext case "$xgettext" in -xgettext$_exe) +xgettext$_exe|xgettext) xgettext=":" _xgettext=":" ;; diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index 7f862f0..4bcfda3 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -507,7 +507,7 @@ $test "$override" && . ./optdef.sh : Restore computed paths for file in $loclist $trylist; do - eval $file="\$_$file"$_exe + eval $file="\$_$file" done ?X: Restore saved variables -- cgit v1.2.3 From 522a57d5cd2c6bc5882cd390142c9a7b8f211da8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 7 Feb 2012 17:43:23 +0000 Subject: Set the TOP variable when extracting .SH files from Configure. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@121 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Extract.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/Extract.U b/mcon/U/Extract.U index d01d324..64d468b 100644 --- a/mcon/U/Extract.U +++ b/mcon/U/Extract.U @@ -28,11 +28,12 @@ ?MAKE:Extract: Mkdirp src ?MAKE: -pick add $@ %< ?F:./extract -?T:CONFIG SRC dir file +?T:CONFIG SRC TOP dir file : script used to extract .SH files with variable substitutions cat >extract </dev/null` EOS cat >>extract <<'EOS' echo "Doing variable substitutions on .SH files..." -- cgit v1.2.3 From fb770085ce9b54451589585b1d4be253dc982c43 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 7 Feb 2012 17:44:54 +0000 Subject: The -s command can change some parts of the exe on Cygwin, so cannot use cmp. Use a size comparison only to check whether the install program strips. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@122 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/install.U | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/mcon/U/install.U b/mcon/U/install.U index 5b4fdf9..aec3b0c 100644 --- a/mcon/U/install.U +++ b/mcon/U/install.U @@ -16,7 +16,7 @@ ?RCS: patch45: created ?RCS: ?MAKE:install installdir: Loc Oldconfig Getfile cat test startsh rm +cc \ - eunicefix package contains mkdir echo n c + eunicefix package contains mkdir echo n c awk wc ?MAKE: -pick add $@ %< ?S:install: ?S: This variable contains the name of an install program that can accept @@ -35,7 +35,7 @@ ?S: resort, setting the variable to './install -d'. Otherwise, it is set to ?S: plain 'mkdir', and cross your fingers! ?S:. -?T:dir file tryit prog creatdir either +?T:dir file tryit prog creatdir either try_wc d_try_wc tryns_wc d_tryns_wc ?F:!tryinst : locate a BSD compatible install program echo " " @@ -91,7 +91,12 @@ EOS fi @end (ls -l d/try >try.ls; ls -l d/try.ns >tryno.ls) 2>/dev/null - if (cmp -s d/try try && cmp -s d/try.ns try.ns && \ + try_wc=`$wc -c try | $awk '{ print $1}' 2>/dev/null` + tryns_wc=`$wc -c try.ns | $awk '{ print $1}' 2>/dev/null` + d_try_wc=`$wc -c d/try | $awk '{ print $1}' 2>/dev/null` + d_tryns_wc=`$wc -c d/try.ns | $awk '{ print $1}' 2>/dev/null` + if ($test "X$try_wc" = "X$d_try_wc" && \ + $test "X$tryns_wc" = "X$d_tryns_wc" && \ $contains 'rwxrw-r--' tryno.ls && \ $contains 'rw-r---w-' try.ls) >/dev/null 2>&1 then -- cgit v1.2.3 From 3cf664800f9de6424bd7dc7d123ce7ae6ba79c77 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 7 Feb 2012 17:47:33 +0000 Subject: Regenerated. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@123 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 39 ++++++++++++++++++++++++--------------- Makefile.SH | 8 +++++--- 2 files changed, 29 insertions(+), 18 deletions(-) diff --git a/Configure b/Configure index 40a8eee..9ce7ad1 100755 --- a/Configure +++ b/Configure @@ -18,7 +18,7 @@ # $Id: Head.U 41 2010-11-28 00:21:26Z rmanfredi $ # -# Generated on Sun Jan 29 22:26:48 CET 2012 [metaconfig 3.5-116] +# Generated on Tue Feb 7 18:38:00 RST 2012 [metaconfig 3.5-119] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-119." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -897,6 +898,7 @@ esac cat >extract </dev/null` EOS cat >>extract <<'EOS' echo "Doing variable substitutions on .SH files..." @@ -1019,7 +1021,7 @@ THIS PACKAGE SEEMS TO BE INCOMPLETE. You have the option of continuing the configuration process, despite the distinct possibility that your kit is damaged, by typing 'y'es. If you do, don't blame me if something goes wrong. I advise you to type 'n'o -and contact the author (Raphael_Manfredi@grenoble.hp.com). +and contact the author (Raphael_Manfredi@pobox.com). EOM echo $n "Continue? [n] $c" >&4 @@ -1248,7 +1250,7 @@ Much effort has been expended to ensure that this shell script will run on any Unix system. If despite that it blows up on yours, your best bet is to edit Configure and run it again. If you can't run Configure for some reason, you'll have to generate a config.sh file by hand. Whatever problems you -have, let me (Raphael_Manfredi@grenoble.hp.com) know how I blew it. +have, let me (Raphael_Manfredi@pobox.com) know how I blew it. This installation script affects things in two ways: @@ -1372,6 +1374,7 @@ smail test uname vi +wc zcat " pth=`echo $PATH | sed -e "s/$p_/ /g"` @@ -1390,7 +1393,7 @@ for file in $loclist; do '') xxx=`./loc $file $file $pth`;; *) xxx=`./loc $xxx $xxx $pth`;; esac - eval $file=$xxx$_exe + eval $file=$xxx eval _$file=$xxx case "$xxx" in /*) @@ -1423,7 +1426,7 @@ for file in $trylist; do '') xxx=`./loc $file $file $pth`;; *) xxx=`./loc $xxx $xxx $pth`;; esac - eval $file=$xxx$_exe + eval $file=$xxx eval _$file=$xxx case "$xxx" in /*) @@ -1439,21 +1442,21 @@ for file in $trylist; do esac done case "$egrep" in -egrep$_exe) +egrep$_exe|egrep) echo "Substituting grep for egrep." egrep=$grep _egrep=$_grep ;; esac case "$ln" in -ln$_exe) +ln$_exe|ln) echo "Substituting cp for ln." ln=$cp _ln=$_cp ;; esac case "$make" in -make$_exe) +make$_exe|make) case "$gmake" in gmake) echo "I can't find make or gmake, and my life depends on it." >&4 @@ -1464,7 +1467,7 @@ make$_exe) ;; esac case "$gmake" in -gmake$_exe) ;; +gmake$_exe|gmake) ;; *) if test -f "/system/gnu_library/bin/ar.pm"; then : Stratus VOS @@ -1846,7 +1849,7 @@ $test -f "$uname" && has_uname=y : Guessing of the OS name -- half the following guesses are probably wrong... : If you have better tests or hints, please send them to the metaconfig -: authors and to Raphael_Manfredi@grenoble.hp.com +: authors and to Raphael_Manfredi@pobox.com $test -f /irix && osname=irix $test -f /xenix && osname=sco_xenix $test -f /dynix && osname=dynix @@ -2185,7 +2188,7 @@ $test "$override" && . ./optdef.sh : Restore computed paths for file in $loclist $trylist; do - eval $file="\$_$file"$_exe + eval $file="\$_$file" done osname="$saved_osname" @@ -2863,7 +2866,7 @@ case "$_o" in esac : set the base revision -baserev=3.0 +baserev=3.5 : make some quick guesses about what we are up against echo " " @@ -3980,7 +3983,12 @@ EOS creatdir="$prog -d" fi (ls -l d/try >try.ls; ls -l d/try.ns >tryno.ls) 2>/dev/null - if (cmp -s d/try try && cmp -s d/try.ns try.ns && \ + try_wc=`$wc -c try | $awk '{ print $1}' 2>/dev/null` + tryns_wc=`$wc -c try.ns | $awk '{ print $1}' 2>/dev/null` + d_try_wc=`$wc -c d/try | $awk '{ print $1}' 2>/dev/null` + d_tryns_wc=`$wc -c d/try.ns | $awk '{ print $1}' 2>/dev/null` + if ($test "X$try_wc" = "X$d_try_wc" && \ + $test "X$tryns_wc" = "X$d_tryns_wc" && \ $contains 'rwxrw-r--' tryno.ls && \ $contains 'rw-r---w-' try.ls) >/dev/null 2>&1 then @@ -4575,6 +4583,7 @@ usecrosscompile='$usecrosscompile' usrinc='$usrinc' uuname='$uuname' vi='$vi' +wc='$wc' xgettext='$xgettext' xlibpth='$xlibpth' zcat='$zcat' diff --git a/Makefile.SH b/Makefile.SH index 6dfeac7..3d204eb 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] -: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-119] +: $X-Id: Jmake.tmpl 69 2011-01-09 13:57:07Z rmanfredi $ case $CONFIG in '') @@ -56,7 +56,7 @@ SUBDIRS = bin mcon jmake pat kit lib $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ +# $X-Id: Jmake.rules 106 2011-11-25 20:36:12Z rmanfredi $ ######################################################################## # Start of Jmakefile @@ -135,6 +135,8 @@ local_clobber:: local_realclean $(RM) Makefile install:: local_install sub_install + @exit 0 + install.man:: maybe_install.man sub_install.man deinstall:: sub_deinstall local_deinstall deinstall.man:: sub_deinstall.man maybe_deinstall.man -- cgit v1.2.3 From eeeef2c58fa859a8770a5ac30455b5a2276080fb Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 7 Feb 2012 18:02:08 +0000 Subject: Use a subshell to trap all errors. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@124 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/install.U | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mcon/U/install.U b/mcon/U/install.U index aec3b0c..81d43fb 100644 --- a/mcon/U/install.U +++ b/mcon/U/install.U @@ -91,10 +91,10 @@ EOS fi @end (ls -l d/try >try.ls; ls -l d/try.ns >tryno.ls) 2>/dev/null - try_wc=`$wc -c try | $awk '{ print $1}' 2>/dev/null` - tryns_wc=`$wc -c try.ns | $awk '{ print $1}' 2>/dev/null` - d_try_wc=`$wc -c d/try | $awk '{ print $1}' 2>/dev/null` - d_tryns_wc=`$wc -c d/try.ns | $awk '{ print $1}' 2>/dev/null` + try_wc=`($wc -c try | $awk '{ print $1}') 2>/dev/null` + tryns_wc=`($wc -c try.ns | $awk '{ print $1}') 2>/dev/null` + d_try_wc=`($wc -c d/try | $awk '{ print $1}') 2>/dev/null` + d_tryns_wc=`($wc -c d/try.ns | $awk '{ print $1}') 2>/dev/null` if ($test "X$try_wc" = "X$d_try_wc" && \ $test "X$tryns_wc" = "X$d_tryns_wc" && \ $contains 'rwxrw-r--' tryno.ls && \ -- cgit v1.2.3 From 9edfbe5173313d3ad41bb9297277ee1840f369fb Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 7 Feb 2012 18:04:14 +0000 Subject: Changed byte ordering checks to make them work even when cross-compiling. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@125 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/byteorder.U | 114 +++++++++++++++++++---------------------------------- 1 file changed, 40 insertions(+), 74 deletions(-) diff --git a/mcon/U/byteorder.U b/mcon/U/byteorder.U index 03665d0..52dbb44 100644 --- a/mcon/U/byteorder.U +++ b/mcon/U/byteorder.U @@ -1,6 +1,5 @@ -?RCS: $Id$ ?RCS: -?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi ?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. @@ -8,92 +7,59 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: $Log: byteorder.U,v $ -?RCS: Revision 3.0.1.2 1997/02/28 15:24:55 ram -?RCS: patch61: no longer ask the user if the test runs ok -?RCS: -?RCS: Revision 3.0.1.1 1994/10/29 16:02:58 ram -?RCS: patch36: added ?F: line for metalint file checking -?RCS: -?RCS: Revision 3.0 1993/08/18 12:05:28 ram -?RCS: Baseline for dist 3.0 netwide release. -?RCS: -?MAKE:byteorder: cat Myread Oldconfig Loc +cc +ccflags rm +?MAKE:byteorder: cat contains echo n c Myread Oldconfig Loc +cc +ccflags rm _o ?MAKE: -pick add $@ %< ?S:byteorder: ?S: This variable holds the byte order. In the following, larger digits ?S: indicate more significance. The variable byteorder is either 4321 -?S: on a big-endian machine, or 1234 on a little-endian, or 87654321 -?S: on a Cray ... or 3412 with weird order ! +?S: on a big-endian machine, or 1234 on a little-endian one. +?S: cannot figure it out. ?S:. ?C:BYTEORDER: ?C: This symbol hold the hexadecimal constant defined in byteorder, -?C: i.e. 0x1234 or 0x4321, etc... +?C: i.e. 1234 for little-endian or 4321 for big-ending. ?C:. ?H:#define BYTEORDER 0x$byteorder /* large digits for MSB */ ?H:. -?T:xxx_prompt -?F:!try -: check for ordering of bytes in a long -case "$byteorder" in -'') - $cat <<'EOM' - -In the following, larger digits indicate more significance. A big-endian -machine like a Pyramid or a Motorola 680?0 chip will come out to 4321. A -little-endian machine like a Vax or an Intel 80?86 chip would be 1234. Other -machines may have weird orders like 3412. A Cray will report 87654321. If -the test program works the default is probably right. -I'm now running the test program... -EOM - $cat >try.c <<'EOCP' -#include -int main() -{ - int i; - union { - unsigned long l; - char c[sizeof(long)]; - } u; - - if (sizeof(long) > 4) - u.l = (0x08070605L << 32) | 0x04030201L; - else - u.l = 0x04030201L; - for (i = 0; i < sizeof(long); i++) - printf("%c", u.c[i]+'0'); - printf("\n"); - return 0; -} +?T:order +: check for ordering of bytes in a word +?X: +?X: An idea from Guido Draheim checking the endianness +?X: without actually executing code, which allows cross-compiling. +?X: +echo " " +$echo $n "Checking byte-ordering...$c" >&4 +$cat >try.c <<'EOCP' +short ascii_be[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; +short ascii_le[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; +short ebcdic_be[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; +short ebcdic_le[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; EOCP - xxx_prompt=y - if $cc $ccflags -o try try.c >/dev/null 2>&1 && ./try > /dev/null; then - dflt=`./try` - case "$dflt" in - [1-4][1-4][1-4][1-4]|12345678|87654321) - echo "(The test program ran ok.)" - echo "byteorder=$dflt" - xxx_prompt=n - ;; - ????|????????) echo "(The test program ran ok.)" ;; - *) echo "(The test program didn't run right for some reason.)" ;; - esac +order='' +if $cc -c $ccflags try.c >/dev/null 2>&1; then + if $contains BIGenDianSyS try$_o >/dev/null 2>&1; then + order=4321 + elif $contains LiTTleEnDian try$_o >/dev/null 2>&1; then + order=1234 else - dflt='4321' - cat <<'EOM' -(I can't seem to compile the test program. Guessing big-endian...) -EOM + $echo $n " wild guessing$c" >&4 + order=4321 fi - case "$xxx_prompt" in - y) - rp="What is the order of bytes in a long?" - . ./myread - byteorder="$ans" - ;; - *) byteorder=$dflt - ;; +fi +case "$order" in +'') + echo " cannot compute it." >&4 + rp="Is byte-order big-endian?" + dflt=y + . ./myread + case "$ans" in + y*) order=4321;; + *) order=1234;; esac ;; +1234) echo " little-endian." >&4;; +4321) echo " big-endian." >&4;; esac -$rm -f try.c try +byteorder=$order +$rm -f try.c try$_o -- cgit v1.2.3 From 706259a078d326a746f62b3b03e0b080b8770f8a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 8 Feb 2012 07:42:27 +0000 Subject: Regenerated. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@126 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Configure b/Configure index 9ce7ad1..f27fe64 100755 --- a/Configure +++ b/Configure @@ -18,7 +18,7 @@ # $Id: Head.U 41 2010-11-28 00:21:26Z rmanfredi $ # -# Generated on Tue Feb 7 18:38:00 RST 2012 [metaconfig 3.5-119] +# Generated on Tue Feb 7 19:02:16 RST 2012 [metaconfig 3.5-123] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-123." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -3983,10 +3983,10 @@ EOS creatdir="$prog -d" fi (ls -l d/try >try.ls; ls -l d/try.ns >tryno.ls) 2>/dev/null - try_wc=`$wc -c try | $awk '{ print $1}' 2>/dev/null` - tryns_wc=`$wc -c try.ns | $awk '{ print $1}' 2>/dev/null` - d_try_wc=`$wc -c d/try | $awk '{ print $1}' 2>/dev/null` - d_tryns_wc=`$wc -c d/try.ns | $awk '{ print $1}' 2>/dev/null` + try_wc=`($wc -c try | $awk '{ print $1}') 2>/dev/null` + tryns_wc=`($wc -c try.ns | $awk '{ print $1}') 2>/dev/null` + d_try_wc=`($wc -c d/try | $awk '{ print $1}') 2>/dev/null` + d_tryns_wc=`($wc -c d/try.ns | $awk '{ print $1}') 2>/dev/null` if ($test "X$try_wc" = "X$d_try_wc" && \ $test "X$tryns_wc" = "X$d_tryns_wc" && \ $contains 'rwxrw-r--' tryno.ls && \ -- cgit v1.2.3 From b8f0aadde580fbd8e6a5be31e7bfff141d6f7b7a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 8 Feb 2012 15:09:03 +0000 Subject: Make it clear that this is integer byte-order. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@127 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/byteorder.U | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mcon/U/byteorder.U b/mcon/U/byteorder.U index 52dbb44..930374b 100644 --- a/mcon/U/byteorder.U +++ b/mcon/U/byteorder.U @@ -16,7 +16,7 @@ ?S: cannot figure it out. ?S:. ?C:BYTEORDER: -?C: This symbol hold the hexadecimal constant defined in byteorder, +?C: This symbol holds the hexadecimal constant defined in byteorder, ?C: i.e. 1234 for little-endian or 4321 for big-ending. ?C:. ?H:#define BYTEORDER 0x$byteorder /* large digits for MSB */ @@ -28,7 +28,7 @@ ?X: without actually executing code, which allows cross-compiling. ?X: echo " " -$echo $n "Checking byte-ordering...$c" >&4 +$echo $n "Checking integer byte-ordering...$c" >&4 $cat >try.c <<'EOCP' short ascii_be[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; short ascii_le[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; @@ -49,8 +49,11 @@ fi case "$order" in '') echo " cannot compute it." >&4 - rp="Is byte-order big-endian?" - dflt=y + rp="Are integers stored in big-endian format?" + case "$byteorder" in + 1234) dflt=n;; + *) dflt=y;; + esac . ./myread case "$ans" in y*) order=4321;; -- cgit v1.2.3 From df23fd5509bd565cf9e02ff12eb019ed410f84f3 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 8 Feb 2012 15:11:18 +0000 Subject: Added checking of float byte-ordering in case it's different from the int one. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@128 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_ieee754.U | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 mcon/U/d_ieee754.U diff --git a/MANIFEST b/MANIFEST index 8a4bb83..54b558a 100644 --- a/MANIFEST +++ b/MANIFEST @@ -252,6 +252,7 @@ mcon/U/d_hidnet.U Do hiddennet stuff? mcon/U/d_hstrerror.U Do we have hstrerror()? mcon/U/d_htonl.U Do we have htonl() and friends? mcon/U/d_iconv.U Do we have iconv()? +mcon/U/d_ieee754.U De we have IEEE-754 floats? mcon/U/d_inetaton.U Do we have inet_aton()? mcon/U/d_inetd.U Should internet communication be done via inetd? mcon/U/d_inflate.U Do we have zlib's inflate()? diff --git a/mcon/U/d_ieee754.U b/mcon/U/d_ieee754.U new file mode 100644 index 0000000..2beccc6 --- /dev/null +++ b/mcon/U/d_ieee754.U @@ -0,0 +1,74 @@ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_ieee754 ieee754_byteorder: cat contains echo n c \ + Myread Oldconfig Loc Setvar +cc +ccflags rm _o +?MAKE: -pick add $@ %< +?S:d_ieee754: +?S: This variable conditionally defines the USE_IEEE754_FLOAT symbol, +?S: which indicates to the C program that floats and doubles use the +?S: IEEE-754 format. +?S:. +?S:ieee754_byteorder: +?S: This variable holds the IEEE float byte order. In the following, larger +?S: digits indicate more significance. The variable byteorder is either 4321 +?S: on a big-endian machine, or 1234 on a little-endian one. +?S: cannot figure it out. +?S:. +?C:USE_IEEE754_FLOAT: +?C: When defined, this symbol indicates that float and double values are +?C: stored using the IEEE-754 floating point format. See IEEE754_BYTEORDER +?C: to determine the endianness in case these values need to be serialized. +?C:. +?C:IEEE754_BYTEORDER: +?C: This symbol holds the hexadecimal constant defined in ieee754_byteorder, +?C: i.e. 1234 for little-endian or 4321 for big-ending floats. It is 0 when +?C: floats are not stored in IEEE-754 format. +?C:. +?H:#$d_ieee754 USE_IEEE754_FLOAT +?H:#define IEEE754_BYTEORDER 0x$ieee754_byteorder /* large digits for MSB */ +?H:. +?T:order +?LINT:set d_ieee754 +: check for ieee754 float and their endianness +?X: +?X: An idea from Guido Draheim checking the endianness +?X: without actually executing code, which allows cross-compiling. +?X: +echo " " +$echo $n "Checking IEEE-754 float byte-ordering...$c" >&4 +$cat >try.c <<'EOCP' +float ascii_le[] = { + 3223.213134765625, 6.8273612896518898e-07, 1.9753562586009612e+31, 0 }; +float ascii_be[] = { + 865942.3125, 6.7652519659605424e+22, 1.9695089292781631e-07, 0 }; +EOCP +order=0 +val='' +if $cc -c $ccflags try.c >/dev/null 2>&1; then + if $contains ISieee754Sys try$_o >/dev/null 2>&1; then + val=$define + order=4321 + elif $contains isIEEE754Sys try$_o >/dev/null 2>&1; then + val=$define + order=1234 + else + val=$undef + fi +fi +set d_ieee754 +eval $setvar +case "$order" in +0) echo " not using IEEE-754 here." >&4;; +1234) echo " little-endian." >&4;; +4321) echo " big-endian." >&4;; +esac +ieee754_byteorder=$order +$rm -f try.c try$_o + -- cgit v1.2.3 From 8233fb6494e96dff527497d4ae5eada2765be91b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 9 Feb 2012 16:42:50 +0000 Subject: Make example stand out and include the cyn variable setting. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@129 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Trylink.U | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/mcon/U/Trylink.U b/mcon/U/Trylink.U index cdcf5ef..8c3316c 100644 --- a/mcon/U/Trylink.U +++ b/mcon/U/Trylink.U @@ -11,8 +11,10 @@ ?X: This unit tries to compile and link a test program. ?X: ?X: To use it, put the program to compile in try.c, then say: -?X: set d_func [optional cc flags to try in sequence] -?X: eval $trylink +?X: +?X: cyn=func +?X: set d_func [optional cc flags to try in sequence] +?X: eval $trylink ?X: ?X: A log of all attempts is kept in the trylink.log file, within the UU ?X: directory (where Configure runs). This directory is only cleaned-up -- cgit v1.2.3 From 079073d45867ae273825fe7b04659d8f00bfbd71 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 9 Feb 2012 17:55:04 +0000 Subject: Factorized definition of STATIC_ASSERT. Converted integer and pointer size computations to allow cross-compiling. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@130 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/Assert.U | 17 ++++++++ mcon/U/alignbytes.U | 5 +-- mcon/U/d_ipv6.U | 5 +-- mcon/U/intsize.U | 119 +++++++++++++++++++--------------------------------- mcon/U/ptrsize.U | 50 ++++++++++------------ 6 files changed, 86 insertions(+), 111 deletions(-) create mode 100644 mcon/U/Assert.U diff --git a/MANIFEST b/MANIFEST index 54b558a..e0788cb 100644 --- a/MANIFEST +++ b/MANIFEST @@ -77,6 +77,7 @@ mcon/README Instructions on using metaconfig mcon/U/ Holds Units for metaconfig mcon/U/AAAAA.U Does magic before Head.U mcon/U/Alpha_mieee.U Can -mieee be passed to cc? +mcon/U/Assert.U Generates the "static_assert.h" file for tests mcon/U/Begin.U "Beginning of configuration questions" mcon/U/Checkcc.U A unit for checking the C compiler for sanity mcon/U/Chk_MANI.U MANIFEST checks diff --git a/mcon/U/Assert.U b/mcon/U/Assert.U new file mode 100644 index 0000000..dfb33a1 --- /dev/null +++ b/mcon/U/Assert.U @@ -0,0 +1,17 @@ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:Assert: cat +?MAKE: -pick add $@ %< +: static assertion checking include file +$cat >static_assert.h <<'EOC' +#define STATIC_ASSERT(expr) \ + do { switch (0) { case ((expr) ? 1 : 0): case 0: break; } } while(0) +EOC + diff --git a/mcon/U/alignbytes.U b/mcon/U/alignbytes.U index f27fada..4a5764e 100644 --- a/mcon/U/alignbytes.U +++ b/mcon/U/alignbytes.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:23 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:alignbytes: Myread Trylink cat i_inttypes i_limits i_math +?MAKE:alignbytes: Assert Myread Trylink cat i_inttypes i_limits i_math ?MAKE: -pick add $@ %< ?S:alignbytes: ?S: This variable holds the number of bytes required to align an @@ -106,8 +106,7 @@ struct s { union u b; }; -#define STATIC_ASSERT(expr) \ - do { switch (0) { case ((expr) ? 1 : 0): case 0: break; } } while(0) +#include "static_assert.h" int main(void) diff --git a/mcon/U/d_ipv6.U b/mcon/U/d_ipv6.U index 4d4b150..f2ed3f8 100644 --- a/mcon/U/d_ipv6.U +++ b/mcon/U/d_ipv6.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_ipv6: Trylink cat i_arpainet i_netdb i_syssock i_niin \ +?MAKE:d_ipv6: Assert Trylink cat i_arpainet i_netdb i_syssock i_niin \ i_winsock2 i_ws2tcpip ?MAKE: -pick add $@ %< ?S:d_ipv6: @@ -52,8 +52,7 @@ case "$d_ipv6" in #ifdef I_WS2TCPIP #include "Ws2tcpip.h" #endif -#define STATIC_ASSERT(x) \ - do { switch (0) { case ((x) ? 1 : 0): case 0: break; } } while(0) +#include "static_assert.h" int main(void) { diff --git a/mcon/U/intsize.U b/mcon/U/intsize.U index 38c5414..362ee4d 100644 --- a/mcon/U/intsize.U +++ b/mcon/U/intsize.U @@ -1,6 +1,6 @@ ?RCS: $Id$ ?RCS: -?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi ?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. @@ -8,20 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: $Log: intsize.U,v $ -?RCS: Revision 3.0.1.2 1997/02/28 15:55:26 ram -?RCS: patch61: avoid prompting the user if the test runs ok -?RCS: patch61: moved code from longsize.U into there -?RCS: patch61: new tests for shortsize as well -?RCS: -?RCS: Revision 3.0.1.1 1994/10/29 16:21:06 ram -?RCS: patch36: added ?F: line for metalint file checking -?RCS: -?RCS: Revision 3.0 1993/08/18 12:08:52 ram -?RCS: Baseline for dist 3.0 netwide release. -?RCS: -?MAKE:intsize longsize shortsize: \ - Myread cat rm +cc +optimize +ccflags +ldflags +libs +?MAKE:intsize longsize shortsize: Assert Myread cat rm +cc +ccflags echo n c ?MAKE: -pick add $@ %< ?S:intsize: ?S: This variable contains the value of the INTSIZE symbol, which @@ -47,78 +34,56 @@ ?C: This symbol contains the value of sizeof(short) so that the C ?C: preprocessor can make decisions based on it. ?C:. -?H:#define INTSIZE $intsize /**/ -?H:#define LONGSIZE $longsize /**/ -?H:#define SHORTSIZE $shortsize /**/ +?H:#define INTSIZE $intsize +?H:#define LONGSIZE $longsize +?H:#define SHORTSIZE $shortsize ?H:. -?F:!intsize.out !intsize +?T:types t size var +?LINT: set intsize longsize shortsize : check for lengths of integral types echo " " -case "$intsize" in -'') - echo "Checking to see how big your integers are..." >&4 - $cat >intsize.c <<'EOCP' -#include -int main() -{ +types='' @if INTSIZE || intsize - printf("intsize=%d;\n", sizeof(int)); +types="$types int" @end @if LONGSIZE || longsize - printf("longsize=%d;\n", sizeof(long)); +types="$types long" @end @if SHORTSIZE || shortsize - printf("shortsize=%d;\n", sizeof(short)); +types="$types short" @end - fflush(stdout); - exit(0); +for t in $types; do + $echo $n "Checking to see how big your ${t}s are...$c" >&4 + for size in 2 4 8 16 error; do + $cat >try.c </dev/null 2>&1 && - ./intsize > intsize.out 2>/dev/null && test -s intsize.out ; then - eval `$cat intsize.out` -@if INTSIZE || intsize - echo "Your integers are $intsize bytes long." -@end -@if LONGSIZE || longsize - echo "Your long integers are $longsize bytes long." -@end -@if SHORTSIZE || shortsize - echo "Your short integers are $shortsize bytes long." -@end - else - $cat >&4 </dev/null 2>&1; then break; fi + done + var=${t}size + case "$size" in + error) + echo " cannot compute it." >&4 + case $t in + int) dflt=4;; + long) dflt=4;; + short) dflt=2;; + esac + rp="What is the size of the \"$t\" type (in bytes)?" . ./myread - longsize="$ans" -@end -@if SHORTSIZE || shortsize - dflt=2 - rp="What is the size of a short integer (in bytes)?" - . ./myread - shortsize="$ans" -@end - fi - ;; -esac -$rm -f intsize intsize.[co] intsize.out + eval $var="$ans" + ;; + *) + echo " $size bytes." >&4 + eval $var=$size + ;; + esac +done +$rm -f try.* diff --git a/mcon/U/ptrsize.U b/mcon/U/ptrsize.U index 7a903aa..4e073d9 100644 --- a/mcon/U/ptrsize.U +++ b/mcon/U/ptrsize.U @@ -1,6 +1,6 @@ ?RCS: $Id$ ?RCS: -?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi ?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. @@ -8,14 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: $Log: ptrsize.U,v $ -?RCS: Revision 3.0.1.1 1994/10/29 16:28:19 ram -?RCS: patch36: added ?F: line for metalint file checking -?RCS: -?RCS: Revision 3.0 1993/08/18 12:09:37 ram -?RCS: Baseline for dist 3.0 netwide release. -?RCS: -?MAKE:ptrsize: cat rm Myread +cc +ccflags +?MAKE:ptrsize: Assert Myread cat rm +cc +ccflags echo n c ?MAKE: -pick add $@ %< ?S:ptrsize: ?S: This variable contains the value of the PTRSIZE symbol, which @@ -25,34 +18,35 @@ ?C: This symbol contains the size of a pointer, so that the C preprocessor ?C: can make decisions based on it. ?C:. -?H:#define PTRSIZE $ptrsize /**/ +?H:#define PTRSIZE $ptrsize ?H:. -?F:!try +?T:size : check for length of pointer echo " " -case "$ptrsize" in -'') - echo "Checking to see how big your pointers are..." >&4 - $cat >try.c <<'EOCP' -#include +$echo $n "Checking to see how big your pointers are...$c" >&4 +for size in 2 4 8 16 error; do + $cat >try.c </dev/null 2>&1 ; then - dflt=`./try` - else - dflt='4' - echo "(I can't seem to compile the test program. Guessing...)" - fi + if $cc -c $ccflags try.c >/dev/null 2>&1; then break; fi +done +case "$size" in +error) + echo " cannot compute it." >&4 + rp="What is the size of a pointer type (in bytes)?" + . ./myread + ptrsize="$ans" ;; *) - dflt="$ptrsize" + echo " $size bytes." >&4 + ptrsize=$size ;; esac -rp="What is the size of a pointer (in bytes)?" -. ./myread -ptrsize="$ans" -$rm -f try.c try +$rm -f try.* -- cgit v1.2.3 From c1893f4bddbe65d8a7bca7e34890fd85d58bd509 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 9 Feb 2012 19:12:08 +0000 Subject: Use inclusion, even for or . git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@131 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_ipv6.U | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/U/d_ipv6.U b/mcon/U/d_ipv6.U index f2ed3f8..dbdc413 100644 --- a/mcon/U/d_ipv6.U +++ b/mcon/U/d_ipv6.U @@ -47,10 +47,10 @@ case "$d_ipv6" in #include #endif #ifdef I_WINSOCK2 -#include "Winsock2.h" +#include #endif #ifdef I_WS2TCPIP -#include "Ws2tcpip.h" +#include #endif #include "static_assert.h" -- cgit v1.2.3 From 8160f5523cbbb37197732ea645d02f884e180f3c Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 9 Feb 2012 19:15:13 +0000 Subject: Make Assert.U explicitly claim it creates a local "static_assert.h" file. Taught metalint to look for #include files in here-documents to catch missing dependencies on Assert, or other special units that would create such locally-defined includes. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@132 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Assert.U | 9 +++++++++ mcon/pl/lint.pl | 16 ++++++++++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/mcon/U/Assert.U b/mcon/U/Assert.U index dfb33a1..59b4e39 100644 --- a/mcon/U/Assert.U +++ b/mcon/U/Assert.U @@ -9,7 +9,16 @@ ?RCS: ?MAKE:Assert: cat ?MAKE: -pick add $@ %< +?F:./static_assert.h : static assertion checking include file +?X: +?X: C programs can include this file to perform STATIC_ASSERT() checks +?X: which are done at compile-time and cause the compilation to fail when +?X: the expression is false. +?X: +?X: It is sufficient to compile with: $cc -c $ccflags try.c +?X: There is no need to link the file to spot the assertion failure. +?X: $cat >static_assert.h <<'EOC' #define STATIC_ASSERT(expr) \ do { switch (0) { case ((expr) ? 1 : 0): case 0: break; } } while(0) diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index 1e4cad3..64bb466 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -793,14 +793,26 @@ sub p_body { $shused{$unit} .= "\$$var " unless $shused{$unit} =~ /\$$var\b/; } - return if $heredoc ne '' && !$began_here; # Still in here-document + local($file); + + if ($heredoc ne '' && !$began_here) { + # Still in here-document + # Just look for included files from C programs expected to be local + # in case they missed the special unit that produces these files. + if (s!#(\s*)include(\s+)"([\w.]+)"!!) { + $file = $3; + $fileused{$unit} .= "$file " unless + $filetmp{$file} || $fileused{$unit} =~ /\b$file\b/; + } + return; + } # Now look at private files used by the unit (./file or ..../UU/file) # We look at things like '. ./myread' and `./loc ...` as well as "< file" - local($file); $_ = $line; s/<\S+?>//g; # would set-off our Date: Fri, 10 Feb 2012 15:53:21 +0000 Subject: Added integer-long-pointer architecture checks. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@133 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/ilp.U | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 118 insertions(+) create mode 100644 mcon/U/ilp.U diff --git a/MANIFEST b/MANIFEST index e0788cb..e659f18 100644 --- a/MANIFEST +++ b/MANIFEST @@ -534,6 +534,7 @@ mcon/U/i_whoami.U Include ? mcon/U/i_winsock2.U Shall we include ? mcon/U/i_ws2tcpip.U Shall we include ? mcon/U/i_zlib.U Shall we include ? +mcon/U/ilp.U Supported integer-long-pointer architecture. mcon/U/inc.U Where to put public include files? mcon/U/install.U Look for a BSD-compatible install mcon/U/intsize.U What is the size of "int"? diff --git a/mcon/U/ilp.U b/mcon/U/ilp.U new file mode 100644 index 0000000..c47bc3e --- /dev/null +++ b/mcon/U/ilp.U @@ -0,0 +1,117 @@ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:ilp d_ilp32 d_ilp64 d_lp64 d_can64: Assert Myread Setvar \ + cat rm +cc +ccflags echo n c intsize longsize ptrsize +?MAKE: -pick add $@ %< +?S:ilp: +?S: This variable contains the largest amount of bits that the CPU supports, +?S: from the compiler's point of view. Typically 32 or 64. +?S:. +?S:d_ilp32: +?S: This variable conditionally defines the CPU_IS_ILP32. +?S:. +?S:d_ilp64: +?S: This variable conditionally defines the CPU_IS_ILP64. +?S:. +?S:d_lp64: +?S: This variable conditionally defines the CPU_IS_LP64. +?S:. +?S:d_can64: +?S: This variable conditionally defines CAN_HANDLE_64BITS. +?S:. +?C:CPU_ILP_MAXBITS: +?C: This symbol contains the largest amount of bits that the CPU natively +?C: supports from the compiler's point of view. Typically 32 or 64. +?C:. +?C:CPU_IS_ILP32: +?C: When defined, this indicates that the integer, long and pointer variables +?C: hold 32-bit values. +?C:. +?C:CPU_IS_ILP64: +?C: When defined, this indicates that the integer, long and pointer variables +?C: hold 64-bit values. +?C:. +?C:CPU_IS_LP64: +?C: When defined, this indicates that the long and pointer variables hold +?C: 64-bit values but integers are smaller (probably only 32-bit wide). +?C:. +?C:CAN_HANDLE_64BITS: +?C: When defined, this indicates that the compiler can handle 64-bit values +?C: despite the CPU having only 32-bit registers. These are available using +?C: the "long long" C type. It is only defined for ILP32 machines, since +?C: 64-bit support is naturally available on ILP64 and LP64 machines. +?C:. +?H:#define CPU_ILP_MAXBITS $ilp +?H:#$d_ilp32 CPU_IS_ILP32 /**/ +?H:#$d_ilp64 CPU_IS_ILP64 /**/ +?H:#$d_lp64 CPU_IS_LP64 /**/ +?H:#$d_can64 CAN_HANDLE_64BITS /**/ +?H:. +?LINT: set d_ilp32 d_ilp64 d_lp64 d_can64 +: check for architecture type +echo " " +$echo $n "Computing CPU architecture type...$c" >&4 +ilp=`expr $longsize \* 8` +case "$ptrsize" in +8) + val=$undef; set d_ilp32; eval $setvar + case "$intsize" in + 8) + echo " ILP64." >&4 + val=$define; set d_ilp64; eval $setvar + val=$undef; set d_lp64; eval $setvar + ;; + *) + echo " LP64." >&4 + val=$define; set d_lp64; eval $setvar + val=$undef; set d_ilp64; eval $setvar + ;; + esac + ;; +*) + echo " ILP${ilp}." >&4 + case "$ilp" in + 32) val=$define;; + *) val=$undef;; + esac + set d_ilp32; eval $setvar + val=$undef; set d_ilp64; eval $setvar + val=$undef; set d_lp64; eval $setvar + ;; +esac + +@if CAN_HANDLE_64BITS || d_can64 +: see whether compiler supports 64-bit emulation +case "$ilp" in +64) ;; +*) + $cat >try.c </dev/null 2>&1; then + echo " " + echo "Your compiler also supports 64-bit emulation." >&4 + val=$define + else + val=$undef + fi + set d_can64 + eval $setvar + $rm -f try.* + ;; +esac + +@end -- cgit v1.2.3 From eebe137986ea89031cd490f6ec39c5617e9fd341 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 10 Feb 2012 15:54:01 +0000 Subject: Remove executable before compiling, just in case. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@134 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Trylink.U | 1 + 1 file changed, 1 insertion(+) diff --git a/mcon/U/Trylink.U b/mcon/U/Trylink.U index 8c3316c..c91494c 100644 --- a/mcon/U/Trylink.U +++ b/mcon/U/Trylink.U @@ -79,6 +79,7 @@ case "$cyn" in esac; $cat try.c >> "$file"; while :; do + $rm -f try$_exe; if $cc $ccflags -o try try.c $ldflags $1 >> "$file" 2>&1; then case "$nparams" in 0) ;; *) echo "==> OK with \"$1\"" >> "$file";; esac; val=$define; -- cgit v1.2.3 From d91676e0527cad5d20112690192e5197a75a065b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 10 Feb 2012 15:55:14 +0000 Subject: Fixed charsize.U for cross-compiling, plus random cleanup. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@135 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/charsize.U | 46 ++++++++++++++++++++++++++-------------------- mcon/U/intsize.U | 10 +++++----- mcon/U/ptrsize.U | 1 + 3 files changed, 32 insertions(+), 25 deletions(-) diff --git a/mcon/U/charsize.U b/mcon/U/charsize.U index ba6b9b3..50afdd3 100644 --- a/mcon/U/charsize.U +++ b/mcon/U/charsize.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:34 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:charsize: cat rm Myread +cc +ccflags +?MAKE:charsize: Assert Myread cat rm +cc +ccflags echo n c ?MAKE: -pick add $@ %< ?S:charsize: ?S: This variable contains the value of the CHARSIZE symbol, which @@ -25,34 +25,40 @@ ?C: This symbol contains the size of a char, so that the C preprocessor ?C: can make decisions based on it. ?C:. -?H:#define CHARSIZE $charsize /**/ +?H:#define CHARSIZE $charsize ?H:. -?F:!try +?T:size s : check for length of character echo " " -case "$charsize" in -'') - echo "Checking to see how big your characters are..." >&4 - $cat >try.c <<'EOCP' -#include +$echo $n "Checking to see how big your characters are...$c" >&4 +for size in 1 2 4 8 error; do + $cat >try.c </dev/null 2>&1 ; then - dflt=`./try` - else - dflt='1' - echo "(I can't seem to compile the test program. Guessing...)" - fi + if $cc -c $ccflags try.c >/dev/null 2>&1; then break; fi +done +case "$size" in +error) + echo " cannot compute it." >&4 + dflt=1 + rp="What is the size of a character (in bytes)?" + . ./myread + charsize="$ans" ;; *) - dflt="$charsize" + case "$size" in + 1) s='';; + *) s='s';; + esac + echo " $size byte$s." >&4 + charsize=$size ;; esac -rp="What is the size of a character (in bytes)?" -. ./myread -charsize="$ans" -$rm -f try.c try +$rm -f try.* diff --git a/mcon/U/intsize.U b/mcon/U/intsize.U index 362ee4d..5dcf6d3 100644 --- a/mcon/U/intsize.U +++ b/mcon/U/intsize.U @@ -39,19 +39,19 @@ ?H:#define SHORTSIZE $shortsize ?H:. ?T:types t size var -?LINT: set intsize longsize shortsize +?LINT: set shortsize intsize longsize : check for lengths of integral types echo " " types='' +@if SHORTSIZE || shortsize +types="$types short" +@end @if INTSIZE || intsize types="$types int" @end @if LONGSIZE || longsize types="$types long" @end -@if SHORTSIZE || shortsize -types="$types short" -@end for t in $types; do $echo $n "Checking to see how big your ${t}s are...$c" >&4 for size in 2 4 8 16 error; do @@ -71,9 +71,9 @@ EOCP error) echo " cannot compute it." >&4 case $t in + short) dflt=2;; int) dflt=4;; long) dflt=4;; - short) dflt=2;; esac rp="What is the size of the \"$t\" type (in bytes)?" . ./myread diff --git a/mcon/U/ptrsize.U b/mcon/U/ptrsize.U index 4e073d9..88bcd15 100644 --- a/mcon/U/ptrsize.U +++ b/mcon/U/ptrsize.U @@ -39,6 +39,7 @@ done case "$size" in error) echo " cannot compute it." >&4 + dflt=4 rp="What is the size of a pointer type (in bytes)?" . ./myread ptrsize="$ans" -- cgit v1.2.3 From 12077db4bf6f8e89abae5203de09dfbd2070f108 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 16 Feb 2012 11:41:31 +0000 Subject: Fixed determination of d_can64 on 64-bit platforms. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@136 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/ilp.U | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/mcon/U/ilp.U b/mcon/U/ilp.U index c47bc3e..4a4195c 100644 --- a/mcon/U/ilp.U +++ b/mcon/U/ilp.U @@ -89,8 +89,9 @@ esac @if CAN_HANDLE_64BITS || d_can64 : see whether compiler supports 64-bit emulation +val=$undef case "$ilp" in -64) ;; +64) val=$define;; *) $cat >try.c <&4 val=$define - else - val=$undef fi - set d_can64 - eval $setvar $rm -f try.* ;; esac +set d_can64 +eval $setvar @end -- cgit v1.2.3 From e74f57e9942decc725f52795bb4d6883f58cc299 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 29 Feb 2012 20:21:30 +0000 Subject: Added units to check for __builtin_ctz() and __builtin_clz() support. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@137 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/U/d_built_clz.U | 37 +++++++++++++++++++++++++++++++++++++ mcon/U/d_built_ctz.U | 37 +++++++++++++++++++++++++++++++++++++ 3 files changed, 76 insertions(+) create mode 100644 mcon/U/d_built_clz.U create mode 100644 mcon/U/d_built_ctz.U diff --git a/MANIFEST b/MANIFEST index e659f18..4f85e49 100644 --- a/MANIFEST +++ b/MANIFEST @@ -172,6 +172,8 @@ mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? +mcon/U/d_built_clz.U Is __builtin_clz() available? +mcon/U/d_built_ctz.U Is __builtin_ctz() available? mcon/U/d_built_memcmp.U Is __builtin_memcmp() available? mcon/U/d_built_popcount.U Is __builtin_popcount() available? mcon/U/d_byacc.U Is byacc available? diff --git a/mcon/U/d_built_clz.U b/mcon/U/d_built_clz.U new file mode 100644 index 0000000..8af83ce --- /dev/null +++ b/mcon/U/d_built_clz.U @@ -0,0 +1,37 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_built_clz: Trylink cat +?MAKE: -pick add $@ %< +?S:d_built_clz: +?S: This variable conditionally defines the HAS_BUILTIN_CLZ symbol, which +?S: indicates to the C program that __builtin_clz is available to count +?S: leading zeroes. +?S:. +?C:HAS_BUILTIN_CLZ: +?C: This symbol, if defined, indicates that the __builtin_clz routine is +?C: available to count leading zeroes in a word. +?C:. +?H:#$d_built_clz HAS_BUILTIN_CLZ /**/ +?H:. +?LINT:set d_built_clz +: check for __builtin_clz +$cat >try.c <try.c < Date: Fri, 23 Mar 2012 15:30:59 +0000 Subject: Added detection of the BFD library. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@138 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_bfd_lib.U | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 mcon/U/d_bfd_lib.U diff --git a/MANIFEST b/MANIFEST index 4f85e49..80b4cb6 100644 --- a/MANIFEST +++ b/MANIFEST @@ -169,6 +169,7 @@ mcon/U/d_attribut.U Checks wether your cc groks __attribute__ mcon/U/d_backtrace.U Do we have backtrace()? mcon/U/d_bcmp.U Do we have bcmp() or memcmp()? mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? +mcon/U/d_bfd_lib.U Is the BFD library available? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? diff --git a/mcon/U/d_bfd_lib.U b/mcon/U/d_bfd_lib.U new file mode 100644 index 0000000..559c3c7 --- /dev/null +++ b/mcon/U/d_bfd_lib.U @@ -0,0 +1,38 @@ +?RCS: $Id: d_dlopen.U 40 2010-11-27 20:54:48Z rmanfredi $ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_bfd_lib: Trylink cat +?MAKE: -pick add $@ %< +?S:d_bfd_lib: +?S: This variable conditionally defines the HAS_BFD_LIBRARY symbol, which +?S: indicates to the C program that the bfd library is available. +?S:. +?C:HAS_BFD_LIBRARY : +?C: This symbol, if defined, indicates that the bfd library is available +?C: to inspect symbols and debugging information. You can safely include +?C: the file when this symbol is defined. +?C:. +?H:#$d_bfd_lib HAS_BFD_LIBRARY /**/ +?H:. +?LINT:set d_bfd_lib +: see whether the bfd library is available +$cat >try.c < +int main(void) +{ + bfd *b; + b = bfd_openr("file", 0); + return b ? 0 : 1; +} +EOC +cyn="whether the BFD library is available" +set d_bfd_lib '-lbfd -lintl -liberty' +eval $trylink + -- cgit v1.2.3 From 9ea7fe0529f51936cf89ade79762329cb647c066 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 24 Mar 2012 16:11:19 +0000 Subject: Detect when $libswanted changed since last run and clear $libs if it did so that we can reuse the fresh list of libraries required. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@139 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Oldconfig.U | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index 4bcfda3..d6b13bb 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -103,11 +103,11 @@ ?T:tmp tmp_n tmp_c tmp_sh file ?T:xxxxfile xxxfile xxfile xfile hintfile newmyuname ?T:tans _ isesix INITPROG DJGPP has_uname -?T:saved_osname saved_osvers +?T:saved_osname saved_osvers saved_libswanted ?D:osname='' ?LINT:change n c sh -?LINT:extern hostarch -?LINT:change hostarch +?LINT:extern hostarch libswanted libs +?LINT:change hostarch libswanted libs : Determine the name of the machine myuname=`$uname -a 2>/dev/null` $test -z "$myuname" && myuname=`hostname 2>/dev/null` @@ -452,6 +452,7 @@ esac ?X: just computed above so that we can propagate these new values. saved_osname="$osname" saved_osvers="$osvers" +saved_libswanted="$libswanted" tmp_n="$n" tmp_c="$c" tmp_sh="$sh" @@ -516,6 +517,13 @@ osvers="$saved_osvers" n="$tmp_n" c="$tmp_c" +?X: Reset libs when libswanted changed since last time +case "$libswanted" in +"$saved_libswanted") ;; +*) libs='';; +esac +libswanted="$saved_libswanted" + . ./checkcc ?X: Cross-compiling support case "$targetarch" in -- cgit v1.2.3 From c5985f2c0f50cb0fd5bc1a10d1a7a01a3a9112d5 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 24 Mar 2012 16:12:14 +0000 Subject: Added check for dladdr(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@140 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_dladdr.U | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 mcon/U/d_dladdr.U diff --git a/MANIFEST b/MANIFEST index 80b4cb6..360a82c 100644 --- a/MANIFEST +++ b/MANIFEST @@ -200,6 +200,7 @@ mcon/U/d_deflate.U Do we have zlib's deflate()? mcon/U/d_devpoll.U Can we use /dev/poll? mcon/U/d_difftime.U Do we have difftime()? mcon/U/d_dirent_d_type.U Does struct dirent has a member d_type? +mcon/U/d_dladdr.U Do we have dladdr()? mcon/U/d_dlerror.U Do we have dlerror()? mcon/U/d_dlopen.U Do we have dlopen()? mcon/U/d_dosuid.U Do they want setuid emulation? diff --git a/mcon/U/d_dladdr.U b/mcon/U/d_dladdr.U new file mode 100644 index 0000000..bbd3d71 --- /dev/null +++ b/mcon/U/d_dladdr.U @@ -0,0 +1,42 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_dladdr: Trylink cat i_dlfcn +?MAKE: -pick add $@ %< +?S:d_dladdr: +?S: This variable conditionally defines the HAS_DLADDR symbol, which +?S: indicates to the C program that the dladdr() routine is available. +?S:. +?C:HAS_DLADDR : +?C: This symbol, if defined, indicates that the dladdr() routine is +?C: available to query the dynamic linker about a specified address. +?C:. +?H:#$d_dladdr HAS_DLADDR /**/ +?H:. +?LINT:set d_dladdr +: see if dladdr exists +$cat >try.c < +#endif +int main(void) +{ + Dl_info info; + + dladdr(main, &info); + return info.dli_fbase != 0; +} +EOC +cyn=dladdr +set d_dladdr '-ldl' +eval $trylink + -- cgit v1.2.3 From 425c4200caedbbacd38367206330cdb15a1d93b1 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 24 Mar 2012 22:53:31 +0000 Subject: Allow BFD detection to run without linking with -lintl. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@141 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_bfd_lib.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_bfd_lib.U b/mcon/U/d_bfd_lib.U index 559c3c7..b28aa4c 100644 --- a/mcon/U/d_bfd_lib.U +++ b/mcon/U/d_bfd_lib.U @@ -33,6 +33,6 @@ int main(void) } EOC cyn="whether the BFD library is available" -set d_bfd_lib '-lbfd -lintl -liberty' +set d_bfd_lib '-lbfd -lintl -liberty' '-lbfd -liberty' eval $trylink -- cgit v1.2.3 From ff40996dda0758be3963281a143dac48da176fd9 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 26 Mar 2012 20:31:13 +0000 Subject: Try to link with -lz when using the BFD library. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@142 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_bfd_lib.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_bfd_lib.U b/mcon/U/d_bfd_lib.U index b28aa4c..5404dae 100644 --- a/mcon/U/d_bfd_lib.U +++ b/mcon/U/d_bfd_lib.U @@ -33,6 +33,7 @@ int main(void) } EOC cyn="whether the BFD library is available" -set d_bfd_lib '-lbfd -lintl -liberty' '-lbfd -liberty' +set d_bfd_lib '-lbfd -lintl -liberty' '-lbfd -liberty' '-lbfd -liberty -lz' \ + '-lbfd -lintl -liberty -lz' eval $trylink -- cgit v1.2.3 From 0639ecfe4e0675f09ab431e0309ff28060f738f8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 28 Mar 2012 20:01:08 +0000 Subject: Added checks for presence and general register availability in the user machine context passed to the signal handler. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@143 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/U/d_uctx_mctx_gregs.U | 40 ++++++++++++++++++++++++++++++++++++++++ mcon/U/i_ucontext.U | 27 +++++++++++++++++++++++++++ 3 files changed, 69 insertions(+) create mode 100644 mcon/U/d_uctx_mctx_gregs.U create mode 100644 mcon/U/i_ucontext.U diff --git a/MANIFEST b/MANIFEST index 360a82c..18429f8 100644 --- a/MANIFEST +++ b/MANIFEST @@ -189,6 +189,7 @@ mcon/U/d_chsize.U Size of a char mcon/U/d_ckeypad.U Do we have the curses keypad()? mcon/U/d_closedir.U Do we have closedir()? mcon/U/d_closefrom.U Do we have closefrom()? +mcon/U/d_uctx_mctx_gregs.U Do we have uc_mcontext.gregs[] in struct ucontext? mcon/U/d_const.U Can cc grok the const keyword? mcon/U/d_crypt.U Does crypt() exist? mcon/U/d_csh.U csh path @@ -499,6 +500,7 @@ mcon/U/i_pthread.U Shall we include ? mcon/U/i_pwd.U Shall we include ? mcon/U/i_regex.U Shall we include ? mcon/U/i_sched.U Shall we include ? +mcon/U/i_ucontext.U Shall we include mcon/U/i_sfio.U Shall we include ? mcon/U/i_stddef.U Shall we include ? mcon/U/i_stdlib.U Shall we include ? diff --git a/mcon/U/d_uctx_mctx_gregs.U b/mcon/U/d_uctx_mctx_gregs.U new file mode 100644 index 0000000..d11fa98 --- /dev/null +++ b/mcon/U/d_uctx_mctx_gregs.U @@ -0,0 +1,40 @@ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_uctx_mctx_gregs: Trylink cat i_ucontext +?MAKE: -pick add $@ %< +?S:d_uctx_mctx_gregs: +?S: This variable conditionally defines the HAS_UCONTEXT_MCONTEXT_GREGS symbol, +?S: which indicates to the C program that it can access general registers +?S: through ucontext->uc_mcontext.gregs[]. +?S:. +?C:HAS_UCONTEXT_MCONTEXT_GREGS: +?C: This symbol, if defined, indicates that the C program can access the +?C: processor's general registers through the gregs[] array in the uc_mcontext +?C: machine context field from the ucontext_t structure. +?C:. +?H:#$d_uctx_mctx_gregs HAS_UCONTEXT_MCONTEXT_GREGS /**/ +?H:. +?LINT:set d_uctx_mctx_gregs +: check for general register access through the ucontext structure +$cat >try.c < +#endif +int main(void) +{ + static ucontext_t uc; + return uc.uc_mcontext.gregs[0]; +} +EOC +cyn="whether 'struct ucontext' has a 'mcontext.gregs[]' member" +set d_uctx_mctx_gregs +eval $trylink + diff --git a/mcon/U/i_ucontext.U b/mcon/U/i_ucontext.U new file mode 100644 index 0000000..569e5fe --- /dev/null +++ b/mcon/U/i_ucontext.U @@ -0,0 +1,27 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_ucontext: Inhdr +?MAKE: -pick add $@ %< +?S:i_ucontext: +?S: This variable conditionally defines the I_UCONTEXT symbol, and indicates +?S: whether a C program may include to get ucontext_t. +?S:. +?C:I_UCONTEXT: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get at the user thread context. +?C:. +?H:#$i_ucontext I_UCONTEXT /**/ +?H:. +?LINT:set i_ucontext +: see if this is a ucontext.h system +set ucontext.h i_ucontext +eval $inhdr + -- cgit v1.2.3 From 29bd21e64f19066fac05253d017080238a9470c9 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 29 Mar 2012 17:25:34 +0000 Subject: Added unit to probe for the uc_mcontext member in the ucontext structure. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@144 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_uctx_mctx.U | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 mcon/U/d_uctx_mctx.U diff --git a/MANIFEST b/MANIFEST index 18429f8..8c930d8 100644 --- a/MANIFEST +++ b/MANIFEST @@ -189,6 +189,7 @@ mcon/U/d_chsize.U Size of a char mcon/U/d_ckeypad.U Do we have the curses keypad()? mcon/U/d_closedir.U Do we have closedir()? mcon/U/d_closefrom.U Do we have closefrom()? +mcon/U/d_uctx_mctx.U Do we have a uc_mcontext field in struct ucontext? mcon/U/d_uctx_mctx_gregs.U Do we have uc_mcontext.gregs[] in struct ucontext? mcon/U/d_const.U Can cc grok the const keyword? mcon/U/d_crypt.U Does crypt() exist? diff --git a/mcon/U/d_uctx_mctx.U b/mcon/U/d_uctx_mctx.U new file mode 100644 index 0000000..c6e82e7 --- /dev/null +++ b/mcon/U/d_uctx_mctx.U @@ -0,0 +1,40 @@ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_uctx_mctx: Trylink cat i_ucontext +?MAKE: -pick add $@ %< +?S:d_uctx_mctx: +?S: This variable conditionally defines the HAS_UCONTEXT_MCONTEXT symbol, +?S: which indicates to the C program that it can access general registers +?S: through some field in ucontext->uc_mcontext. +?S:. +?C:HAS_UCONTEXT_MCONTEXT: +?C: This symbol, if defined, indicates that the C program can access the +?C: processor's general registers through some field in the uc_mcontext +?C: machine context field from the ucontext_t structure. +?C:. +?H:#$d_uctx_mctx HAS_UCONTEXT_MCONTEXT /**/ +?H:. +?LINT:set d_uctx_mctx +: check for machine context field in the ucontext structure +$cat >try.c < +#endif +int main(void) +{ + static ucontext_t *uc = 0; + return (int) &uc->uc_mcontext; +} +EOC +cyn="whether 'struct ucontext' has a 'uc_mcontext' member" +set d_uctx_mctx +eval $trylink + -- cgit v1.2.3 From 6743f4e15f83cb856c82b538d52146d1e14420c5 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 2 Apr 2012 06:49:50 +0000 Subject: When the -E switch is given, don't cleanup the UU directory. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@145 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Finish.U | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/U/Finish.U b/mcon/U/Finish.U index 2ed7bd9..640c617 100644 --- a/mcon/U/Finish.U +++ b/mcon/U/Finish.U @@ -43,8 +43,8 @@ : Finish up by extracting the .SH files case "$alldone" in exit) - $rm -rf UU - echo "Extraction done." +?X: They supplied the -E switch + echo "Stopping at your request, leaving temporary files around." exit 0 ;; cont) -- cgit v1.2.3 From b6765d719358b3241d51c995fafe049f18b1ada0 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 4 Apr 2012 06:58:03 +0000 Subject: Improved library detection by using the compiler to perform a link check. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@146 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/libs.U | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/mcon/U/libs.U b/mcon/U/libs.U index 4e1d879..f92fd0b 100644 --- a/mcon/U/libs.U +++ b/mcon/U/libs.U @@ -210,7 +210,21 @@ for thislib in $libswanted; do fi done if $test ! -f "$xxx"; then - echo "No -l$thislib." +?X: +?X: Try linking aginst the library: gcc on linux platforms is notorious for +?X: using complex library search logic, especially on systems mixing 32-bit +?X: and 64-bit versions. +?X: + if $cc -o lt $ccflags $ldflags lt.c -l$thislib >/dev/null 2>&1 + then + echo "Found -l$thislib (via $cc)." + case " $dflt " in + *"-l$thislib "*) ;; + *) dflt="$dflt -l$thislib";; + esac + else + echo "No -l$thislib." + fi fi done set X $dflt -- cgit v1.2.3 From 4c1f6b0c7cee88181de470fc42edeb86e245aa85 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 24 Sep 2012 11:51:02 +0000 Subject: Added 4 new units. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@147 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 10 +++++-- mcon/U/d_datastart_symbol.U | 64 +++++++++++++++++++++++++++++++++++++++++ mcon/U/d_dliterphdr.U | 44 ++++++++++++++++++++++++++++ mcon/U/d_getcontext.U | 38 ++++++++++++++++++++++++ mcon/U/d_sendmsg.U | 70 +++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 223 insertions(+), 3 deletions(-) create mode 100644 mcon/U/d_datastart_symbol.U create mode 100644 mcon/U/d_dliterphdr.U create mode 100644 mcon/U/d_getcontext.U create mode 100644 mcon/U/d_sendmsg.U diff --git a/MANIFEST b/MANIFEST index 8c930d8..04904cd 100644 --- a/MANIFEST +++ b/MANIFEST @@ -189,8 +189,6 @@ mcon/U/d_chsize.U Size of a char mcon/U/d_ckeypad.U Do we have the curses keypad()? mcon/U/d_closedir.U Do we have closedir()? mcon/U/d_closefrom.U Do we have closefrom()? -mcon/U/d_uctx_mctx.U Do we have a uc_mcontext field in struct ucontext? -mcon/U/d_uctx_mctx_gregs.U Do we have uc_mcontext.gregs[] in struct ucontext? mcon/U/d_const.U Can cc grok the const keyword? mcon/U/d_crypt.U Does crypt() exist? mcon/U/d_csh.U csh path @@ -204,6 +202,7 @@ mcon/U/d_difftime.U Do we have difftime()? mcon/U/d_dirent_d_type.U Does struct dirent has a member d_type? mcon/U/d_dladdr.U Do we have dladdr()? mcon/U/d_dlerror.U Do we have dlerror()? +mcon/U/d_dliterphdr.U Do we have dl_iterate_phdr()? mcon/U/d_dlopen.U Do we have dlopen()? mcon/U/d_dosuid.U Do they want setuid emulation? mcon/U/d_drem.U Do we have drem()? @@ -212,6 +211,7 @@ mcon/U/d_end_symbol.U Whether linker defines the "end" symbol mcon/U/d_eofpipe.U Will EOF be seen on closed pipes? mcon/U/d_epoll.U Can we use epoll_xxx() routines? mcon/U/d_etext_symbol.U Whether linker defines the "etext" symbol +mcon/U/d_datastart_symbol.U Whether linker defines the "__data_start" symbol mcon/U/d_euc2jis.U Do we have euc2jis()? mcon/U/d_fast_assert.U Can we use fast assertions? mcon/U/d_fchmod.U Do we have fchmod()? @@ -229,6 +229,7 @@ mcon/U/d_ftime.U Do we have ftime()? mcon/U/d_ftrncate.U Do we have ftruncate()? mcon/U/d_gconvert.U Do we have gconvert() or gcvt()? mcon/U/d_getaddrinfo.U Do we have etaddrinfo()? +mcon/U/d_getcontext.U Do we have getcontext()? mcon/U/d_geteuid.U Do we have geteuid()? mcon/U/d_getgrps.U Do we have getgroups()? mcon/U/d_gethbynm.U Do we have gethostbyname()? @@ -354,6 +355,7 @@ mcon/U/d_semctl.U Do we have d_semctl()? mcon/U/d_semget.U Do we have semget()? mcon/U/d_semop.U Do we have semop()? mcon/U/d_sendfile.U Do we have sendfile()? +mcon/U/d_sendmsg.U Do we have sendmsg()? mcon/U/d_setegid.U Do we have setegid()? mcon/U/d_seteuid.U Do we have seteuid()? mcon/U/d_setgrps.U Do we have setgroups()? @@ -429,6 +431,8 @@ mcon/U/d_tminsys.U Is struct tm in ? mcon/U/d_truncate.U Do we have truncate()? mcon/U/d_tzmin.U Do we use tz_minuteswest? mcon/U/d_tzname.U Do we have tzname[]? +mcon/U/d_uctx_mctx.U Do we have a uc_mcontext field in struct ucontext? +mcon/U/d_uctx_mctx_gregs.U Do we have uc_mcontext.gregs[] in struct ucontext? mcon/U/d_ulimit.U Do we have ulimit()? mcon/U/d_umask.U Do we have umask()? mcon/U/d_usendir.U Use our own ndir routines? @@ -501,7 +505,6 @@ mcon/U/i_pthread.U Shall we include ? mcon/U/i_pwd.U Shall we include ? mcon/U/i_regex.U Shall we include ? mcon/U/i_sched.U Shall we include ? -mcon/U/i_ucontext.U Shall we include mcon/U/i_sfio.U Shall we include ? mcon/U/i_stddef.U Shall we include ? mcon/U/i_stdlib.U Shall we include ? @@ -532,6 +535,7 @@ mcon/U/i_sysvfs.U Shall we include ? mcon/U/i_syswait.U Is there a ? mcon/U/i_termio.U Include or ? mcon/U/i_time.U Which time.h should we include? +mcon/U/i_ucontext.U Shall we include mcon/U/i_unistd.U Include ? mcon/U/i_utime.U Include ? mcon/U/i_values.U Shall we include diff --git a/mcon/U/d_datastart_symbol.U b/mcon/U/d_datastart_symbol.U new file mode 100644 index 0000000..e612d2c --- /dev/null +++ b/mcon/U/d_datastart_symbol.U @@ -0,0 +1,64 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2011, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_datastart_symbol d_weak_datastart_symbol: Trylink cat +?MAKE: -pick add $@ %< +?S:d_datastart_symbol: +?S: This variable conditionally defines HAS_DATA_START_SYMBOL if the +?S: linker-defined symbol "__data_start" is available to compute the start +?S: address of the program's data segment. +?S:. +?S:d_weak_datastart_symbol: +?S: This variable conditionally defines HAS_WEAK_DATA_START_SYMBOL if the +?S: linker-defined symbol "data_start" is weakly defined to compute the start +?S: address of the program's data segment. +?S:. +?C:HAS_DATA_START_SYMBOL: +?C: This symbol, if defined, indicates that the C program can declare +?C: extern const int __data_start; +?C: and then use &__data_start to know the start of the data segment. +?C:. +?C:HAS_WEAK_DATA_START_SYMBOL: +?C: This symbol, if defined, indicates that the C program can declare +?C: #pragma weak data_start +?C: extern const int data_start; +?C: and then use &data_start to know the start of the data segment. +?C:. +?H:#$d_datastart_symbol HAS_DATA_START_SYMBOL /**/ +?H:#$d_weak_datastart_symbol HAS_WEAK_DATA_START_SYMBOL /**/ +?H:. +?LINT:set d_datastart_symbol d_weak_datastart_symbol +: see if the __data_start symbol exists +$cat >try.c <> 12; +} +EOC +cyn="whether your linker defines the __data_start symbol" +set d_datastart_symbol +eval $trylink + +@if d_weak_datastart_symbol || HAS_WEAK_DATA_START_SYMBOL +: see if the weak data_start symbol exists +$cat >try.c <> 12; +} +EOC +cyn="whether your linker defines the weak data_start symbol" +set d_weak_datastart_symbol +eval $trylink + +@end diff --git a/mcon/U/d_dliterphdr.U b/mcon/U/d_dliterphdr.U new file mode 100644 index 0000000..73b24b7 --- /dev/null +++ b/mcon/U/d_dliterphdr.U @@ -0,0 +1,44 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_dliterphdr: Trylink cat +?MAKE: -pick add $@ %< +?S:d_dliterphdr: +?S: This variable conditionally defines HAS_DL_ITERATE_PHDR when +?S: dl_iterate_phdr() is available to walk through the list of shared +?S: objects. +?S:. +?C:HAS_DL_ITERATE_PHDR: +?C: This symbol, if defined, indicates that the dl_iterate_phdr() function is +?C: available to walk through the list of shared objects. One needs to +?C: define _GNU_SOURCE before including to get the proper signature. +?C:. +?H:#$d_dliterphdr HAS_DL_ITERATE_PHDR /**/ +?H:. +?LINT:set d_dliterphdr +: see if dl_iterate_phdr exists +$cat >try.c < +int cb(struct dl_phdr_info *info, size_t size, void *data) +{ + return NULL == info && NULL == data && size != 0 ? 0 : 1; +} +int main(void) +{ + int ret; + ret = dl_iterate_phdr(cb, NULL); + return ret ? 0 : 1; +} +EOC +cyn=dl_iterate_phdr +set d_dliterphdr +eval $trylink + diff --git a/mcon/U/d_getcontext.U b/mcon/U/d_getcontext.U new file mode 100644 index 0000000..f32ae6e --- /dev/null +++ b/mcon/U/d_getcontext.U @@ -0,0 +1,38 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getcontext: Trylink cat +?MAKE: -pick add $@ %< +?S:d_getcontext: +?S: This variable conditionally defines HAS_GETCONTEXT if getcontext() is +?S: available to save a process context. +?S:. +?C:HAS_GETCONTEXT: +?C: This symbol, if defined, indicates that the getcontext() function is +?C: available to save a process context. +?C:. +?H:#$d_getcontext HAS_GETCONTEXT /**/ +?H:. +?LINT:set d_getcontext +: see if getcontext exists +$cat >try.c < +int main(void) +{ + int ret; + ucontext_t u; + ret = getcontext(&u); + return ret ? 0 : 1; +} +EOC +cyn=getcontext +set d_getcontext +eval $trylink + diff --git a/mcon/U/d_sendmsg.U b/mcon/U/d_sendmsg.U new file mode 100644 index 0000000..8dd9ec7 --- /dev/null +++ b/mcon/U/d_sendmsg.U @@ -0,0 +1,70 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sendmsg: Trylink cat i_systypes i_sysselct i_syssock \ + i_winsock2 i_mswsock d_windows +?MAKE: -pick add $@ %< +?S:d_sendmsg: +?S: This variable conditionally defines the HAS_SENDMSG symbol, +?S: which indicates to the C program that the sendmsg() function is +?S: available. +?S:. +?C:HAS_SENDMSG: +?C: This symbol, if defined, indicates that the sendmsg() function +?C: is available. +?C:. +?H:#$d_sendmsg HAS_SENDMSG /**/ +?H:. +?LINT:set d_sendmsg +: check for sendmsg function +$cat >try.c < +#endif +#ifdef I_SYS_SOCKET +#include +#endif +#ifdef WINDOWS_SYSTEM +#define WINVER 0x0501 +#endif +#ifdef I_WINSOCK2 +#include +#endif +#ifdef I_MSWSOCK +#include +#endif +int main(void) +{ + static struct msghdr msg; + int ret, fd, flags; + + fd = 1; + flags = 1; + msg.msg_name = (void *) 0; + msg.msg_namelen |= 1; + msg.msg_iov = (void *) 0; + msg.msg_iovlen |= 1; + /* msg.msg_flags is intentionally excluded, see other unit */ + msg.msg_control = (void *) 0; + msg.msg_controllen |= 1; + ret = sendmsg(fd, &msg, flags); + return ret ? 0 : 1; +} +EOC +cyn='sendmsg' +set d_sendmsg +eval $trylink + -- cgit v1.2.3 From ebbfa02182365d8f2c74f293f3384a73def7bba1 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 1 Nov 2012 14:12:29 +0000 Subject: Deprecate the MYMALLOC symbol in favor of USE_MY_MALLOC. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@148 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/mallocsrc.U | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mcon/U/mallocsrc.U b/mcon/U/mallocsrc.U index 79da8a1..5a4197a 100644 --- a/mcon/U/mallocsrc.U +++ b/mcon/U/mallocsrc.U @@ -68,10 +68,10 @@ ?H:#define Malloc_t $malloctype /**/ ?H:#define Free_t $freetype /**/ ?H:. -?C:MYMALLOC: +?C:USE_MY_MALLOC (MYMALLOC): ?C: This symbol, if defined, indicates that we're using our own malloc. ?C:. -?H:#$d_mymalloc MYMALLOC /**/ +?H:#$d_mymalloc USE_MY_MALLOC /**/ ?H:. ?LINT:change libs ?X: Cannot test for mallocsrc; it is the unit's name and there is a bug in @@ -89,7 +89,7 @@ case "$usemymalloc" in esac ;; esac -rp="Do you wish to attempt to use the malloc that comes with $package?" +rp="Do you wish to attempt to use the malloc() that comes with $package?" . ./myread usemymalloc="$ans" case "$ans" in @@ -100,7 +100,7 @@ y*|true) d_mymalloc="$define" ?X: Maybe libs.U should be dependent on mallocsrc.U, but then ?X: most packages that use dist probably don't supply their own -?X: malloc, so this is probably an o.k. comprpomise +?X: malloc, so this is probably an o.k. compromise case "$libs" in *-lmalloc*) : Remove malloc from list of libraries to use -- cgit v1.2.3 From cd8d914044ecca04c271984ee7b5296c42ae16f1 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 1 Nov 2012 14:27:11 +0000 Subject: Added checks for getrlimit() and setrlimit(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@149 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 4 +++- mcon/U/d_getrlimit.U | 46 ++++++++++++++++++++++++++++++++++++++++++++++ mcon/U/d_setrlimit.U | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 96 insertions(+), 1 deletion(-) create mode 100644 mcon/U/d_getrlimit.U create mode 100644 mcon/U/d_setrlimit.U diff --git a/MANIFEST b/MANIFEST index 04904cd..4c53422 100644 --- a/MANIFEST +++ b/MANIFEST @@ -194,6 +194,7 @@ mcon/U/d_crypt.U Does crypt() exist? mcon/U/d_csh.U csh path mcon/U/d_ctermid.U Do we have ctermid()? mcon/U/d_cuserid.U Do we have cuserid()? +mcon/U/d_datastart_symbol.U Whether linker defines the "__data_start" symbol mcon/U/d_dbl_dig.U Is DBL_DIG defined in or ? mcon/U/d_debugging.U Conditionally defines -DDEBUGGING mcon/U/d_deflate.U Do we have zlib's deflate()? @@ -211,7 +212,6 @@ mcon/U/d_end_symbol.U Whether linker defines the "end" symbol mcon/U/d_eofpipe.U Will EOF be seen on closed pipes? mcon/U/d_epoll.U Can we use epoll_xxx() routines? mcon/U/d_etext_symbol.U Whether linker defines the "etext" symbol -mcon/U/d_datastart_symbol.U Whether linker defines the "__data_start" symbol mcon/U/d_euc2jis.U Do we have euc2jis()? mcon/U/d_fast_assert.U Can we use fast assertions? mcon/U/d_fchmod.U Do we have fchmod()? @@ -247,6 +247,7 @@ mcon/U/d_getpgrp2.U Do we have getpgrp2()? (DG/UX) mcon/U/d_getppid.U Do we have getppid()? mcon/U/d_getprior.U Do we have getpriority()? mcon/U/d_getpwent.U How is passwd info gotten? +mcon/U/d_getrlimit.U Do we have getrlimit()? mcon/U/d_gettext.U Checks whether gettext() is available mcon/U/d_gettext.U Do we have gettext()? mcon/U/d_getuid.U Do we have getuid()? @@ -369,6 +370,7 @@ mcon/U/d_setproctitle.U Do we have setproctitle()? mcon/U/d_setregid.U Do we have setregid()? mcon/U/d_setreuid.U Do we have setreuid()? mcon/U/d_setrgid.U Do we have setrgid()? +mcon/U/d_setrlimit.U Do we have setrlimit()? mcon/U/d_setruid.U Do we have setruid()? mcon/U/d_setsid.U Do we have setsid()? mcon/U/d_sgndchr.U Are chars signed? diff --git a/mcon/U/d_getrlimit.U b/mcon/U/d_getrlimit.U new file mode 100644 index 0000000..6874c30 --- /dev/null +++ b/mcon/U/d_getrlimit.U @@ -0,0 +1,46 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_getrlimit.U,v $ +?RCS: +?MAKE:d_getrlimit: Trylink cat i_systime +?MAKE: -pick add $@ %< +?S:d_getrlimit: +?S: This variable conditionally defines the HAS_GETRLIMIT symbol, which +?S: indicates to the C program that the getrlimit() routine is available +?S: to get process resource limits. +?S:. +?C:HAS_GETRLIMIT : +?C: This symbol, if defined, indicates that the getrlimit() routine is +?C: available to get process resource limits. +?C:. +?H:#$d_getrlimit HAS_GETRLIMIT /**/ +?H:. +?LINT:set d_getrlimit +: see if getrlimit exists +$cat >try.c < +#endif +#include +int main(void) +{ + static struct rlimit lim; + int ret; + ret |= getrlimit(RLIMIT_CORE, &lim); + ret += lim.rlim_cur > lim.rlim_max ? 1 : 0; + return ret ? 0 : 1; +} +EOC +cyn=getrlimit +set d_getrlimit +eval $trylink + diff --git a/mcon/U/d_setrlimit.U b/mcon/U/d_setrlimit.U new file mode 100644 index 0000000..706c4c9 --- /dev/null +++ b/mcon/U/d_setrlimit.U @@ -0,0 +1,47 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?RCS: $Log: d_setrlimit.U,v $ +?RCS: +?MAKE:d_setrlimit: Trylink cat i_systime +?MAKE: -pick add $@ %< +?S:d_setrlimit: +?S: This variable conditionally defines the HAS_SETRLIMIT symbol, which +?S: indicates to the C program that the setrlimit() routine is available +?S: to set process resource limits. +?S:. +?C:HAS_SETRLIMIT : +?C: This symbol, if defined, indicates that the setrlimit() routine is +?C: available to set process resource limits. +?C:. +?H:#$d_setrlimit HAS_SETRLIMIT /**/ +?H:. +?LINT:set d_setrlimit +: see if setrlimit exists +$cat >try.c < +#endif +#include +int main(void) +{ + static struct rlimit lim; + int ret; + lim.rlim_cur = 0; + lim.rlim_max = 1; + ret |= setrlimit(RLIMIT_CORE, &lim); + return ret ? 0 : 1; +} +EOC +cyn=setrlimit +set d_setrlimit +eval $trylink + -- cgit v1.2.3 From 1d63bad75a91360f9be34354e42ef2f15f4cb94b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 3 Nov 2012 00:00:58 +0000 Subject: Fixed broken check for symlink support. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@150 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/lns.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/lns.U b/mcon/U/lns.U index d2475df..453716d 100644 --- a/mcon/U/lns.U +++ b/mcon/U/lns.U @@ -19,7 +19,7 @@ ?X: We can't rely on d_symlink because that may be listed in the ?X: C library but unimplemented. ?X: -?MAKE:lns: ln rm test +?MAKE:lns: ln rm touch test ?MAKE: -pick add $@ %< ?S:lns: ?S: This variable holds the name of the command to make @@ -29,6 +29,7 @@ : determine whether symbolic links are supported echo " " $rm -f blurfl sym +$touch blurfl if $ln -s blurfl sym > /dev/null 2>&1 && $test -f sym; then echo "Symbolic links are supported." >&4 lns="$ln -s" -- cgit v1.2.3 From 77c2dabb427f5eefc05003e3cb6d90865a0bfe6e Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 3 Nov 2012 00:02:04 +0000 Subject: Added missing blank line. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@151 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/official.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/official.U b/mcon/U/official.U index 9c8eae3..e346537 100644 --- a/mcon/U/official.U +++ b/mcon/U/official.U @@ -33,7 +33,7 @@ case "$official" in false) official=false val="$undef" - + echo " " ./warn 'This build will not be suitable for distribution.' 4>&4 ;; -- cgit v1.2.3 From e7a8e31751b07ae420e647a881c7832bd60e77f2 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 3 Nov 2012 00:04:08 +0000 Subject: Added blurb for malloc() superseding. Also define the unit when USE_MY_MALLOC is present, not just $mallocobj. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@152 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/mallocsrc.U | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/mcon/U/mallocsrc.U b/mcon/U/mallocsrc.U index 5a4197a..66d304e 100644 --- a/mcon/U/mallocsrc.U +++ b/mcon/U/mallocsrc.U @@ -21,7 +21,7 @@ ?RCS: ?MAKE:mallocsrc mallocobj usemymalloc malloctype d_mymalloc \ freetype: Myread \ - Oldconfig package Guess Setvar rm cat +cc +ccflags Findhdr \ + Oldconfig package spackage Guess Setvar rm cat +cc +ccflags Findhdr \ i_malloc i_stdlib sed libs _o ptrsize ?MAKE: -pick add $@ %< ?X: Put near top so that other tests don't erroneously include @@ -76,7 +76,7 @@ ?LINT:change libs ?X: Cannot test for mallocsrc; it is the unit's name and there is a bug in ?X: the interpreter which defines all the names, even though they are not used. -@if mallocobj +@if mallocobj || USE_MY_MALLOC : determine which malloc to compile in echo " " case "$usemymalloc" in @@ -89,6 +89,16 @@ case "$usemymalloc" in esac ;; esac +$cat < Date: Sat, 10 Nov 2012 19:51:46 +0000 Subject: Fixed regular expression which prevented "cc -MM" from being picked. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@153 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/mkdep.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/mkdep.U b/mcon/U/mkdep.U index bd54d64..80a9f56 100644 --- a/mcon/U/mkdep.U +++ b/mcon/U/mkdep.U @@ -138,7 +138,7 @@ EOM chmod +x $mkdep $eunicefix $mkdep if $mkdep dep.c >dep.out 2>/dev/null && - $contains "dep$_o: dep.h" dep.out >/dev/null 2>&1 + $contains "dep$_o:.*dep\.h" dep.out >/dev/null 2>&1 then echo "Looks like we can use $cc -MM." else -- cgit v1.2.3 From 0cc141edfd2785c4c356fb7a18eaf4790452c211 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 10 Nov 2012 22:02:51 +0000 Subject: Added checks for as well. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@154 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/i_ucontext.U | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 72 insertions(+), 3 deletions(-) diff --git a/mcon/U/i_ucontext.U b/mcon/U/i_ucontext.U index 569e5fe..a819d9e 100644 --- a/mcon/U/i_ucontext.U +++ b/mcon/U/i_ucontext.U @@ -8,20 +8,89 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:i_ucontext: Inhdr +?MAKE:i_ucontext i_sys_ucontext: Inhdr cat echo n c rm \ + +cc +ccflags +ldflags ?MAKE: -pick add $@ %< ?S:i_ucontext: ?S: This variable conditionally defines the I_UCONTEXT symbol, and indicates ?S: whether a C program may include to get ucontext_t. ?S:. +?S:i_sys_ucontext: +?S: This variable conditionally defines the I_SYS_UCONTEXT symbol, and +?S: indicates whether a C program may include to get +?S: ucontext_t. +?S:. ?C:I_UCONTEXT: ?C: This symbol, if defined, indicates to the C program that it should -?C: include to get at the user thread context. +?C: include to get at the user thread context. A portable +?C: program must also check I_SYS_UCONTEXT for inclusion, +?C: especially on OSX. +?C:. +?C:I_SYS_UCONTEXT: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get at the user thread context. A portable +?C: program must also check I_UCONTEXT for inclusion. ?C:. ?H:#$i_ucontext I_UCONTEXT /**/ +?H:#$i_sys_ucontext I_SYS_UCONTEXT /**/ ?H:. -?LINT:set i_ucontext +?T:working : see if this is a ucontext.h system set ucontext.h i_ucontext eval $inhdr +: see if this is a sys/ucontext.h system +set sys/ucontext.h i_sys_ucontext +eval $inhdr + +: when both ucontext.h and sys/ucontext.h are available, check which one works +case "$i_ucontext$i_sys_ucontext" in +"$define$define") + echo " " + $cat >try.c <<'EOC' +#ifdef I_UCONTEXT +#include +#endif +#ifdef I_SYS_UCONTEXT +#include +#endif + +int main(void) +{ + static ucontext_t u; + return (int) sizeof(u) & 0xff; +} +EOC + $echo $n "Checking whether including alone works...$c" >&4 + working= + if $cc $ccflags -DI_UCONTEXT -o try try.c $ldflags >/dev/null 2>&1; then + working="$define" + fi + case "$working" in + "$define") + echo " yes." >&4 + i_sys_ucontext="$undef" + ;; + *) + echo "no." >&4 + echo " " + $echo $n "Checking whether including works...$c" >&4 + working= + if $cc $ccflags -DI_SYS_UCONTEXT \ + -o try try.c $ldflags >/dev/null 2>&1 + then + working="$define" + fi + case "$working" in + "$define") + echo " yes, ignoring ." >&4 + i_ucontext="$undef" + ;; + *) echo " no, we'll include both then." >&4;; + esac + ;; + esac + ;; +esac +$rm -f try.* + -- cgit v1.2.3 From 252002667251d535456c3758ba204fbc52fa882b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 11 Nov 2012 00:15:40 +0000 Subject: Updated checks on 'struct ucontext' to include if necessary. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@155 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_uctx_mctx.U | 6 +++++- mcon/U/d_uctx_mctx_gregs.U | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/mcon/U/d_uctx_mctx.U b/mcon/U/d_uctx_mctx.U index c6e82e7..565ae2f 100644 --- a/mcon/U/d_uctx_mctx.U +++ b/mcon/U/d_uctx_mctx.U @@ -7,7 +7,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_uctx_mctx: Trylink cat i_ucontext +?MAKE:d_uctx_mctx: Trylink cat i_ucontext i_sys_ucontext ?MAKE: -pick add $@ %< ?S:d_uctx_mctx: ?S: This variable conditionally defines the HAS_UCONTEXT_MCONTEXT symbol, @@ -25,9 +25,13 @@ : check for machine context field in the ucontext structure $cat >try.c < #endif +#ifdef I_SYS_UCONTEXT +#include +#endif int main(void) { static ucontext_t *uc = 0; diff --git a/mcon/U/d_uctx_mctx_gregs.U b/mcon/U/d_uctx_mctx_gregs.U index d11fa98..f1525ca 100644 --- a/mcon/U/d_uctx_mctx_gregs.U +++ b/mcon/U/d_uctx_mctx_gregs.U @@ -7,7 +7,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_uctx_mctx_gregs: Trylink cat i_ucontext +?MAKE:d_uctx_mctx_gregs: Trylink cat i_ucontext i_sys_ucontext ?MAKE: -pick add $@ %< ?S:d_uctx_mctx_gregs: ?S: This variable conditionally defines the HAS_UCONTEXT_MCONTEXT_GREGS symbol, @@ -25,9 +25,13 @@ : check for general register access through the ucontext structure $cat >try.c < #endif +#ifdef I_SYS_UCONTEXT +#include +#endif int main(void) { static ucontext_t uc; -- cgit v1.2.3 From 3395fcead8e85e13fd73fac1f61fe6be2e9f1873 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 19 Dec 2012 16:44:39 +0000 Subject: Added new metaconfig symbol $pthread to hold compiler/linker flag for threads. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@156 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.tmpl | 4 ++-- mcon/U/ccflags.U | 43 +++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 43 insertions(+), 4 deletions(-) diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index bae477b..6bd1a17 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -90,9 +90,9 @@ DIR = $DIR ?CTAGS:CTAGS = ctags /* FIXME */ ?_EXE:_EXE = $_exe ?INSTALLPREFIX:INSTALLPREFIX = $prefix -?JCFLAGS:JCFLAGS = \$(CFLAGS) $optimize $ccflags $large +?JCFLAGS:JCFLAGS = \$(CFLAGS) $optimize $pthread $ccflags $large ?JCPPFLAGS:JCPPFLAGS = $cppflags -?JLDFLAGS:JLDFLAGS = \$(LDFLAGS) $optimize $ldflags +?JLDFLAGS:JLDFLAGS = \$(LDFLAGS) $optimize $pthread $ldflags ?JLFLAGS:JLFLAGS = \$(LFLAGS) ?JYFLAGS:JYFLAGS = \$(YFLAGS) $yaccflags ?L:L = $manext diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index be37f52..80aa140 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -45,7 +45,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:31 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:ccflags ldflags lkflags cppflags optimize locincpth: test cat \ +?MAKE:ccflags ldflags lkflags cppflags optimize pthread locincpth: test cat \ Myread Guess Options Oldconfig gccversion mips_type +usrinc \ package contains rm +cc cppstdin cppminus cpprun cpplast libpth \ loclibpth hint @@ -62,6 +62,10 @@ ?S: This variable contains any optimizer/debugger flag that should be used. ?S: It is up to the Makefile to use it. ?S:. +?S:pthread: +?S: This variable contains any thread-specific flag that should be used. +?S: It is up to the Makefile to use it. +?S:. ?S:ldflags: ?S: This variable contains any additional C loader flags desired by ?S: the user. It is up to the Makefile to use this. @@ -83,6 +87,7 @@ ?D:ccflags='' ?D:ldflags='' ?D:optimize='' +?D:pthread='' ?INIT:: Possible local include directories to search. ?INIT:: Set locincpth to "" in a hint file to defeat local include searches. ?INIT:locincpth="" @@ -129,6 +134,40 @@ case "$optimize" in 'none') optimize=" ";; esac +?X: When they are using I_PTHREAD, check whether we need/can supply -pthread +?X: to the compiler for proper threading support. This is usually necessary +?X: with gcc, in addition to the required -lpthread that need to be listed +?X: at link time. +@if I_PTHREAD +: see whether we need -pthread at the compile/link stage +case "$pthread" in +''|$undef) + $cat > try.c <<'EOF' +int main() { return 0; } +EOF + if $cc -pthread -c try.c >/dev/null 2>&1; then + dflt='-pthread' + else + dflt='none' + fi + ;; +*) dflt="$pthread";; +esac +$cat <&4 ?X: Strip extra blanks in case some of the following variables are empty -set X $cc $optimize $ccflags $ldflags -o try try.c +set X $cc $optimize $pthread $ccflags $ldflags -o try try.c shift $cat >try.msg < Date: Wed, 19 Dec 2012 16:49:00 +0000 Subject: Fixed d_semop.U and d_semget.U to include for IPC_XXX defines. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@157 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_semget.U | 1 + mcon/U/d_semop.U | 1 + 2 files changed, 2 insertions(+) diff --git a/mcon/U/d_semget.U b/mcon/U/d_semget.U index 56b4716..828e1be 100644 --- a/mcon/U/d_semget.U +++ b/mcon/U/d_semget.U @@ -27,6 +27,7 @@ ?LINT:set d_semget : see if semget exists $cat >try.c < #include int main(void) { diff --git a/mcon/U/d_semop.U b/mcon/U/d_semop.U index 28f3062..efc515e 100644 --- a/mcon/U/d_semop.U +++ b/mcon/U/d_semop.U @@ -27,6 +27,7 @@ ?LINT:set d_semop : see if semop exists $cat >try.c < #include int main(void) { -- cgit v1.2.3 From 135d1bc0902f67542fa53283d03fda2ba975bde8 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 19 Dec 2012 16:49:47 +0000 Subject: Added checks for and inclusions. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@158 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/U/i_sysipc.U | 28 ++++++++++++++++++++++++++++ mcon/U/i_syssem.U | 28 ++++++++++++++++++++++++++++ 3 files changed, 58 insertions(+) create mode 100644 mcon/U/i_sysipc.U create mode 100644 mcon/U/i_syssem.U diff --git a/MANIFEST b/MANIFEST index 4c53422..17ef5be 100644 --- a/MANIFEST +++ b/MANIFEST @@ -514,6 +514,7 @@ mcon/U/i_string.U or ? mcon/U/i_sysdir.U Shall we include ? mcon/U/i_sysfile.U Do we need ? mcon/U/i_sysioctl.U Include or ? +mcon/U/i_sysipc.U Shall we include ? mcon/U/i_sysmman.U Do we have to include ? mcon/U/i_sysmount.U Shall we include ? mcon/U/i_sysndir.U Shall we include ? @@ -521,6 +522,7 @@ mcon/U/i_sysparam.U Shall we include ? mcon/U/i_syspoll.U Shall we include ? mcon/U/i_sysresrc.U Shall we include ? mcon/U/i_sysselct.U Shall we include ? +mcon/U/i_syssem.U Shall we include ? mcon/U/i_syssendfile.U Shall we include ? mcon/U/i_syssock.U Shall we include ? mcon/U/i_sysstat.U Shall we include diff --git a/mcon/U/i_sysipc.U b/mcon/U/i_sysipc.U new file mode 100644 index 0000000..8153f80 --- /dev/null +++ b/mcon/U/i_sysipc.U @@ -0,0 +1,28 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_sysipc: Inhdr +?MAKE: -pick add $@ %< +?S:i_sysipc: +?S: This variable conditionally defines the I_SYS_IPC symbol, and indicates +?S: whether a C program should include to be able to get defines +?S: for SysV IPCs. +?S:. +?C:I_SYS_IPC: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to get the defines for SysV IPCs. +?C:. +?H:#$i_sysipc I_SYS_IPC /**/ +?H:. +?LINT:set i_sysipc +: see if this is a sys/ipc system +set sys/ipc.h i_sysipc +eval $inhdr + diff --git a/mcon/U/i_syssem.U b/mcon/U/i_syssem.U new file mode 100644 index 0000000..b4218c7 --- /dev/null +++ b/mcon/U/i_syssem.U @@ -0,0 +1,28 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2012, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:i_syssem: Inhdr +?MAKE: -pick add $@ %< +?S:i_syssem: +?S: This variable conditionally defines the I_SYS_SEM symbol, and indicates +?S: whether a C program should include to be able to use SysV +?S: semaphores. +?S:. +?C:I_SYS_SEM: +?C: This symbol, if defined, indicates to the C program that it should +?C: include to use SysV semaphores. +?C:. +?H:#$i_syssem I_SYS_SEM /**/ +?H:. +?LINT:set i_syssem +: see if this is a sys/sem system +set sys/sem.h i_syssem +eval $inhdr + -- cgit v1.2.3 From fdaf8e621096e839de045b47b3000905a62b978b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 20 Jan 2013 19:37:33 +0000 Subject: Added check for semtimedop(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@159 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_semop.U | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/mcon/U/d_semop.U b/mcon/U/d_semop.U index efc515e..4f690a2 100644 --- a/mcon/U/d_semop.U +++ b/mcon/U/d_semop.U @@ -12,19 +12,28 @@ ?RCS: Revision 3.0 1993/08/18 12:07:05 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_semop: Trylink cat +?MAKE:d_semop d_semtimedop: Trylink cat ?MAKE: -pick add $@ %< ?S:d_semop: ?S: This variable conditionally defines the HAS_SEMOP symbol, which ?S: indicates to the C program that the semop() routine is available. ?S:. +?S:d_semtimedop: +?S: This variable conditionally defines the HAS_SEMTIMEDOP symbol, which +?S: indicates to the C program that the semtimedop() routine is available. +?S:. ?C:HAS_SEMOP: ?C: This symbol, if defined, indicates that the semop() routine is ?C: available to execute semaphore operations. ?C:. +?C:HAS_SEMTIMEDOP: +?C: This symbol, if defined, indicates that the semtimedop() routine is +?C: available to execute semaphore operations with a timeout. +?C:. ?H:#$d_semop HAS_SEMOP /**/ +?H:#$d_semtimedop HAS_SEMTIMEDOP /**/ ?H:. -?LINT:set d_semop +?LINT:set d_semop d_semtimedop : see if semop exists $cat >try.c < @@ -47,3 +56,29 @@ cyn=semop set d_semop eval $trylink +@if d_semtimedop || HAS_SEMTIMEDOP +: see if semtimedop exists +$cat >try.c < +#include +#include +int main(void) +{ + static int ret, id; + static size_t n; + static struct sembuf buf; + + + buf.sem_num |= 1; + buf.sem_op |= 1; + buf.sem_flg |= SEM_UNDO; + buf.sem_flg |= IPC_NOWAIT; + ret |= semtimedop(id, &buf, n, (struct timespec *) 0); + return ret ? 0 : 1; +} +EOC +cyn=semtimedop +set d_semtimedop +eval $trylink + +@end -- cgit v1.2.3 From 6ba7cb8c936704a5d43606be6d72fe9427d3044b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 20 Jan 2013 19:38:03 +0000 Subject: Added check for getnameinfo(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@160 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_getnameinfo.U | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 mcon/U/d_getnameinfo.U diff --git a/MANIFEST b/MANIFEST index 17ef5be..406ebf0 100644 --- a/MANIFEST +++ b/MANIFEST @@ -239,6 +239,7 @@ mcon/U/d_gethname.U What is the C function to get host name? mcon/U/d_getifaddrs.U Do we have getifaddrs() and freeifaddrs()? mcon/U/d_getinvent.U Do we have getinvent()? mcon/U/d_getlogin.U Do we have getlogin()? +mcon/U/d_getnameinfo.U Do we have getnameinfo()? mcon/U/d_getopt.U Do we have getopt()? mcon/U/d_getpagsz.U Computes system's page size mcon/U/d_getpgid.U Do we have getpgid()? diff --git a/mcon/U/d_getnameinfo.U b/mcon/U/d_getnameinfo.U new file mode 100644 index 0000000..f0aef5c --- /dev/null +++ b/mcon/U/d_getnameinfo.U @@ -0,0 +1,73 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2013, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getnameinfo: Trylink cat i_arpainet i_netdb i_syssock \ + i_winsock2 i_ws2tcpip i_niin d_windows +?MAKE: -pick add $@ %< +?S:d_getnameinfo: +?S: This variable conditionally defines the HAS_GETNAMEINFO symbol, which +?S: indicates to the C program that the getnameinfo() routine is available. +?S:. +?C:HAS_GETNAMEINFO: +?C: This symbol is defined when getnameinfo() can be used. +?C:. +?H:#$d_getnameinfo HAS_GETNAMEINFO +?H:. +?LINT: set d_getnameinfo +: can we use getnameinfo? +$cat >try.c < +#ifdef I_SYS_SOCKET +#include +#endif +#ifdef I_NETINET_IN +#include +#endif +#ifdef I_ARPA_INET +#include +#endif +#ifdef I_NETDB +#include +#endif +#ifdef WINDOWS_SYSTEM +#define WINVER 0x0501 +#endif +#ifdef I_WINSOCK2 +#include +#endif +#ifdef I_WS2TCPIP +#include +#endif +int main(void) +{ + int ret; + static struct sockaddr sa; + socklen_t salen; + char host[NI_MAXHOST]; + char serv[NI_MAXSERV]; + + salen = sizeof(sa); + ret = getnameinfo(&sa, salen, + host, sizeof host, serv, sizeof serv, + NI_NAMEREQD | NI_DGRAM | NI_NOFQDN | NI_NUMERICHOST | NI_NUMERICSERV); + return 0 == ret; +} +EOC +cyn=getnameinfo +set d_getnameinfo '-lWs2_32' +eval $trylink + -- cgit v1.2.3 From 20c74efeeb701e4966e96e2176a573119c30053a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 27 Jan 2013 21:38:33 +0000 Subject: Let cf_email.U honor the external MAILDOMAIN environment variable, if set. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@161 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/cf_email.U | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/mcon/U/cf_email.U b/mcon/U/cf_email.U index caad32e..65c8329 100644 --- a/mcon/U/cf_email.U +++ b/mcon/U/cf_email.U @@ -19,7 +19,8 @@ ?S: Electronic mail address of the person who ran Configure. This can be ?S: used by units that require the user's e-mail, like MailList.U. ?S:. -?T:cont +?T:cont maildomain +?LINT:extern MAILDOMAIN : determine the e-mail address of the user who is running us $cat < Date: Wed, 30 Jan 2013 18:15:29 +0000 Subject: Added check for pthread_attr_setstack(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@162 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_ptattr_setstack.U | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 mcon/U/d_ptattr_setstack.U diff --git a/MANIFEST b/MANIFEST index 406ebf0..cc9f6d9 100644 --- a/MANIFEST +++ b/MANIFEST @@ -223,6 +223,7 @@ mcon/U/d_fgetpos.U Do we have fgetpos()? mcon/U/d_flexfnam.U Long filenames? mcon/U/d_flock.U Do we have flock()? mcon/U/d_fmod.U Do we have fmod()? +mcon/U/d_ptattr_setstack.U Do we have pthread_attr_setstack()? mcon/U/d_fork.U Do we have fork()? mcon/U/d_fsetpos.U Do we have fsetpos()? mcon/U/d_ftime.U Do we have ftime()? diff --git a/mcon/U/d_ptattr_setstack.U b/mcon/U/d_ptattr_setstack.U new file mode 100644 index 0000000..15e1c15 --- /dev/null +++ b/mcon/U/d_ptattr_setstack.U @@ -0,0 +1,40 @@ +?RCS: +?RCS: Copyright (c) 2013 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_ptattr_setstack: Trylink cat +?MAKE: -pick add $@ %< +?S:d_ptattr_setstack: +?S: This variable conditionally defines the HAS_PTHREAD_ATTR_SETSTACK symbol, +?S: which indicates to the C program that pthread_attr_setstack() should be +?S: used to set the thread stack, instead of pthread_attr_setstackaddr(). +?S:. +?C:HAS_PTHREAD_ATTR_SETSTACK: +?C: This symbol is defined when pthread_attr_setstack() can be used to set +?C: the thread stack. Otherwise, use obsoleted pthread_attr_setstackaddr(). +?C:. +?H:#$d_ptattr_setstack HAS_PTHREAD_ATTR_SETSTACK +?H:. +?LINT: set d_ptattr_setstack +: can we use pthread_attr_setstack +$cat >try.c <<'EOC' +#include +int main(void) +{ + pthread_attr_t attr; + void *p = NULL; + static int ret; + + ret |= pthread_attr_setstack(&attr, p, 4096); + return ret ? 0 : 1; +} +EOC +cyn=pthread_attr_setstack +set d_ptattr_setstack '-lpthread' +eval $trylink + -- cgit v1.2.3 From d7cd6e6a142eea327fb98779a538111ccdab59a3 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 8 May 2013 08:57:31 +0000 Subject: Updated new SVN URL for the dist code. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@163 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Head.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/Head.U b/mcon/U/Head.U index e4ab8a7..7b144ff 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -78,7 +78,7 @@ # Note: this Configure script was generated automatically. Rather than # working with this copy of Configure, you may wish to get metaconfig. # The dist package (which contains metaconfig) is available via SVN: -# svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist +# svn co https://svn.code.sf.net/p/dist/code/trunk/dist ?X: ?X: NOTA BENE: ?X: If you develop you own version of metaconfig based on this work, -- cgit v1.2.3 From bc93d08c1f443264f5be4c71b2ddad0c00179507 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 8 May 2013 08:58:37 +0000 Subject: Integrated patch from H.Merijn Brand to make Debian users happy(er). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@164 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/cf_email.U | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/mcon/U/cf_email.U b/mcon/U/cf_email.U index 65c8329..311b050 100644 --- a/mcon/U/cf_email.U +++ b/mcon/U/cf_email.U @@ -13,7 +13,7 @@ ?RCS: patch16: created ?RCS: ?RCS: -?MAKE:cf_email: cat cf_by myhostname mydomain Oldconfig Myread +?MAKE:cf_email: cat cf_by test myhostname mydomain Oldconfig Myread ?MAKE: -pick add $@ %< ?S:cf_email: ?S: Electronic mail address of the person who ran Configure. This can be @@ -34,7 +34,13 @@ EOM cont=x while test "$cont"; do case "$MAILDOMAIN" in - '') maildomain="$myhostname$mydomain";; + '') + if $test -s /etc/mailname; then + maildomain=`$cat /etc/mailname` + else + maildomain="$myhostname$mydomain" + fi + ;; *) maildomain="$MAILDOMAIN";; esac case "$cf_email" in -- cgit v1.2.3 From df36c8f47fe6da65fefc4825c99631f102c2a4db Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 8 May 2013 09:00:29 +0000 Subject: Added the USE_DIFFTIME symbol to indicate that difftime() should be used. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@165 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_difftime.U | 50 +++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 43 insertions(+), 7 deletions(-) diff --git a/mcon/U/d_difftime.U b/mcon/U/d_difftime.U index 06aa376..c558753 100644 --- a/mcon/U/d_difftime.U +++ b/mcon/U/d_difftime.U @@ -1,6 +1,6 @@ ?RCS: $Id$ ?RCS: -?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +?RCS: Copyright (c) 1991-1997, 2004-2006, 2013 Raphael Manfredi ?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. @@ -10,23 +10,30 @@ ?RCS: ?RCS: Original Author: Andy Dougherty ?RCS: -?RCS: $Log: d_difftime.U,v $ -?RCS: Revision 3.0.1.1 1994/08/29 16:07:31 ram -?RCS: patch32: created by ADO -?RCS: -?MAKE:d_difftime: Trylink cat +?MAKE:d_difftime use_difftime: Assert Trylink cat ?MAKE: -pick add $@ %< ?S:d_difftime: ?S: This variable conditionally defines the HAS_DIFFTIME symbol, which ?S: indicates to the C program that the difftime() routine is available. ?S:. +?S:use_difftime: +?S: This variable conditionally defines the USE_DIFFTIME symbol, which +?S: indicates to the C program that the difftime() routine should be +?S: used to compare times. +?S:. ?C:HAS_DIFFTIME : ?C: This symbol, if defined, indicates that the difftime routine is ?C: available. ?C:. +?C:USE_DIFFTIME : +?C: This symbol, if defined, indicates that the difftime routine should +?C: really be used to compare times. +?C:. ?H:#$d_difftime HAS_DIFFTIME /**/ +?H:#$use_difftime USE_DIFFTIME /**/ ?H:. -?LINT:set d_difftime +?LINT:set d_difftime use_difftime +?T:avoid_difftime : see if difftime exists $cat >try.c < @@ -42,3 +49,32 @@ cyn=difftime set d_difftime eval $trylink +@if USE_DIFFTIME || use_difftime +: see whether difftime should be used +case "$d_difftime" in +"$define") + $cat >try.c < +int main(void) +{ +?X: If time_t is not a signed integer type, we cannot calculate properly +?X: with the raw values. Define USE_DIFFTIME when this does not compile. + STATIC_ASSERT((time_t) -1 < 0); + return 0; +} +EOC + cyn="whether difftime() can be avoided" + set avoid_difftime + eval $trylink + ;; +*) avoid_difftime="$define";; +esac +case "$avoid_difftime" in +"$define") val="$undef";; +*) val="$define";; +esac +set use_difftime +eval $setvar + +@end -- cgit v1.2.3 From cc69e911c90e73b71eb54c4b0789f66ba315cab2 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 8 May 2013 14:39:33 +0000 Subject: Jumbo typo-fixing patch, courtesy of H.Merijn Brand. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@166 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Csym.U | 6 +++--- mcon/U/Head.U | 2 +- mcon/U/MailAuthor.U | 2 +- mcon/U/MailList.U | 2 +- mcon/U/Mips.U | 4 ++-- mcon/U/Oldconfig.U | 2 +- mcon/U/Options.U | 4 ++-- mcon/U/Unix.U | 2 +- mcon/U/ccflags.U | 2 +- mcon/U/d_memmove.U | 2 +- mcon/U/d_regcmp.U | 8 ++++---- mcon/U/d_scannl.U | 4 ++-- mcon/U/d_table.U | 2 +- mcon/U/d_time.U | 2 +- mcon/U/d_times.U | 2 +- mcon/U/enablenls.U | 2 +- mcon/U/i_fcntl.U | 2 +- mcon/U/i_sysioctl.U | 2 +- mcon/U/i_termio.U | 2 +- mcon/U/inc.U | 2 +- mcon/U/lex.U | 2 +- mcon/U/libc.U | 4 ++-- mcon/U/libs.U | 6 +++--- mcon/U/make.U | 2 +- mcon/U/mallocsrc.U | 2 +- mcon/U/nlist_pfx.U | 2 +- mcon/U/perlpath.U | 4 ++-- mcon/U/prototype.U | 2 +- mcon/U/sitearch.U | 2 +- mcon/U/sitelib.U | 2 +- mcon/U/src.U | 2 +- mcon/U/startperl.U | 2 +- mcon/U/uidtype.U | 2 +- mcon/U/usenm.U | 2 +- mcon/U/usrinc.U | 2 +- mcon/U/vaproto.U | 2 +- mcon/U/warnflags.U | 2 +- 37 files changed, 49 insertions(+), 49 deletions(-) diff --git a/mcon/U/Csym.U b/mcon/U/Csym.U index 94a5649..b2af441 100644 --- a/mcon/U/Csym.U +++ b/mcon/U/Csym.U @@ -14,7 +14,7 @@ ?RCS: patch56: added quotes for OS/2 support ?RCS: ?RCS: Revision 3.0.1.3 1995/05/12 12:00:33 ram -?RCS: patch54: fixed C test program to bypasss gcc builtin type checks (ADO) +?RCS: patch54: fixed C test program to bypass gcc builtin type checks (ADO) ?RCS: ?RCS: Revision 3.0.1.2 1994/10/31 09:34:13 ram ?RCS: patch44: added Options to the MAKE line since it's no longer in Init.U @@ -73,12 +73,12 @@ yes) ?X: type), the compiler assuming it's a built-in declaration given that the ?X: returned size matches. At least with 'char' we are safe! -- RAM, for ADO ?X: -?X: Let's thank GNU cc for making our lifes so easy! :-) +?X: Let's thank GNU cc for making our lives so easy! :-) ?X: (An alternative for the future would be to use our knowledge about gcc ?X: to force a -fno-builtin option in the compile test, in case the 'char' ?X: trick is obsoleted by future gcc releases). -- RAM ?X: -?X: Lastly, gcc 3.4 otimizes &missing == 0 away, so we use + 2 instead now. +?X: Lastly, gcc 3.4 optimizes &missing == 0 away, so we use + 2 instead now. ?X: The GNU folks like to do weird things, don't they? -- RAM, 2004-06-05 ?X ?X: The above was invalid because main returns an int not a pointer. diff --git a/mcon/U/Head.U b/mcon/U/Head.U index 7b144ff..8258c71 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -149,7 +149,7 @@ fi ?X: There are two schools of thoughts here. Some people correctly argue that ?X: the user has a better chance than we do of setting a reasonable PATH and ?X: others argue that Configure is the best place there is to set up a suitable -?X: PATH. Well, here we try to compromize by keeping the user's PATH and +?X: PATH. Well, here we try to compromise by keeping the user's PATH and ?X: appending some directories which are known to work on some machine or the ?X: other. The rationale behind this being that a novice user might not have a ?X: proper environment variable set, and some directories like /etc (where diff --git a/mcon/U/MailAuthor.U b/mcon/U/MailAuthor.U index 61c226a..b996a68 100644 --- a/mcon/U/MailAuthor.U +++ b/mcon/U/MailAuthor.U @@ -34,7 +34,7 @@ ?X: ?X: This unit asks the user to please send a message to the author. ?X: To force inclusion of this unit, you must add it's name to the -?X: dependancies on the MAKE line in your private copy of End.U. +?X: dependencies on the MAKE line in your private copy of End.U. ?X: This allows a smart mailagent program to automatically let users know ?X: when their package is out of date, and to allow users to be notified of ?X: any future patches. diff --git a/mcon/U/MailList.U b/mcon/U/MailList.U index e9fb039..e46060b 100644 --- a/mcon/U/MailList.U +++ b/mcon/U/MailList.U @@ -18,7 +18,7 @@ ?X: ?X: This unit offers the user the option of subscribing to the mailing ?X: list. To force inclusion of this unit, you must add it's name to the -?X: dependancies on the MAKE line in your private copy of End.U. +?X: dependencies on the MAKE line in your private copy of End.U. ?X: The address of the mailing list server must be set via a "list_request=..." ?X: entry in the .package file. This is usually done by running packinit and ?X: answering the proper questions. diff --git a/mcon/U/Mips.U b/mcon/U/Mips.U index 09bccf6..6924d19 100644 --- a/mcon/U/Mips.U +++ b/mcon/U/Mips.U @@ -16,7 +16,7 @@ ?RCS: patch54: ensure that ./mips always exists (ADO) ?RCS: ?RCS: Revision 3.0.1.1 1994/05/06 15:18:31 ram -?RCS: patch23: ensure usrinc value is preserved accross sessions (WED) +?RCS: patch23: ensure usrinc value is preserved across sessions (WED) ?RCS: ?RCS: Revision 3.0 1993/08/18 12:09:58 ram ?RCS: Baseline for dist 3.0 netwide release. @@ -29,7 +29,7 @@ ?S: Possible values are "BSD 4.3" and "System V". ?S:. ?S:incpath: -?S: This variable must preceed the normal include path to get hte +?S: This variable must precede the normal include path to get hte ?S: right one, as in "$incpath/usr/include" or "$incpath/usr/lib". ?S: Value can be "" or "/bsd43" on mips. ?S:. diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index d6b13bb..ff6f5db 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -205,7 +205,7 @@ if $test "X$has_uname" != X; then ?X: $3 and $4 are version/subversion ?X: $5 is always "pc", but that might not be unique to DJGPP. ?X: (e.g. Solaris_x86 has $5 = i86pc, which doesn't actually conflict, -?X: but it's close enought that I can easily imagine other vendors also +?X: but it's close enough that I can easily imagine other vendors also ?X: using variants of pc* in $5.) ?X: The "DJGPP" environment variable is always set when djgpp is active. pc*) diff --git a/mcon/U/Options.U b/mcon/U/Options.U index 0508d27..dde2cc7 100644 --- a/mcon/U/Options.U +++ b/mcon/U/Options.U @@ -23,7 +23,7 @@ ?RCS: patch49: this unit now exports file optdef.sh, not a variable ?RCS: ?RCS: Revision 3.0.1.3 1995/01/11 15:19:00 ram -?RCS: patch45: new -O option allowing -D and -U to override config.sh setttings +?RCS: patch45: new -O option allowing -D and -U to override config.sh settings ?RCS: patch45: file optdef.sh is no longer removed after sourcing ?RCS: ?RCS: Revision 3.0.1.2 1994/10/29 15:58:06 ram @@ -139,7 +139,7 @@ EOF : process the command line options ?X: Use "$@" to keep arguments with spaces in them from being split apart. ?X: For the same reason, awk will output quoted arguments and the final eval -?X: removes them and sets a proper $* array. An 'X' is prependend to each +?X: removes them and sets a proper $* array. An 'X' is prepended to each ?X: argument before being fed to echo to guard against 'echo -x', where -x ?X: would be understood as an echo option! It is removed before feeding awk. set X `for arg in "$@"; do echo "X$arg"; done | diff --git a/mcon/U/Unix.U b/mcon/U/Unix.U index 4c05c7b..fbd295d 100644 --- a/mcon/U/Unix.U +++ b/mcon/U/Unix.U @@ -14,7 +14,7 @@ ?RCS: patch61: created ?RCS: ?X: -?X: The purpose of this unit is to define things that are common accross all +?X: The purpose of this unit is to define things that are common across all ?X: known UNIX platforms. If Configure is ported/used on a non-UNIX ?X: environment, then some of the following variables can be redefined in hint ?X: files. diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index 80aa140..79c36a5 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -21,7 +21,7 @@ ?RCS: patch54: now checks for cc/ccflags/ldflags coherency ?RCS: ?RCS: Revision 3.0.1.6 1994/10/29 16:07:02 ram -?RCS: patch36: gcc versionning no longer relies on the C compiler's name +?RCS: patch36: gcc versioning no longer relies on the C compiler's name ?RCS: patch36: simplified check for gcc version checking (ADO) ?RCS: ?RCS: Revision 3.0.1.5 1994/08/29 16:06:35 ram diff --git a/mcon/U/d_memmove.U b/mcon/U/d_memmove.U index 6cd758b..da0dddf 100644 --- a/mcon/U/d_memmove.U +++ b/mcon/U/d_memmove.U @@ -17,7 +17,7 @@ ?S:d_memmove: ?S: This variable conditionally defines the HAS_MEMMOVE symbol, which ?S: indicates to the C program that the memmove() routine is available -?S: to copy potentatially overlapping blocks of memory. +?S: to copy potentially overlapping blocks of memory. ?S:. ?C:HAS_MEMMOVE: ?C: This symbol, if defined, indicates that the memmove routine is available diff --git a/mcon/U/d_regcmp.U b/mcon/U/d_regcmp.U index cff5054..e5e7a1f 100644 --- a/mcon/U/d_regcmp.U +++ b/mcon/U/d_regcmp.U @@ -23,21 +23,21 @@ ?S:d_regcmp: ?S: This variable conditionally defines the HAS_REGCMP symbol, which ?S: indicates to the C program that the regcmp() routine is available -?S: for regular patern matching (usally on System V). +?S: for regular pattern matching (usually on System V). ?S:. ?S:d_re_comp: ?S: This variable conditionally defines the HAS_RECOMP symbol, which ?S: indicates to the C program that the re_comp() routine is available -?S: for regular patern matching (usally on BSD). If so, it is likely that +?S: for regular pattern matching (usually on BSD). If so, it is likely that ?S: re_exec() exists. ?S:. ?C:HAS_REGCMP (REGCMP): ?C: This symbol, if defined, indicates that the regcmp() routine is -?C: available to do some regular patern matching (usually on System V). +?C: available to do some regular pattern matching (usually on System V). ?C:. ?C:HAS_RECOMP (RECOMP): ?C: This symbol, if defined, indicates that the re_comp() routine is -?C: available to do some regular patern matching (usually on BSD). If so, +?C: available to do some regular pattern matching (usually on BSD). If so, ?C: it is likely that re_exec() be available. ?C:. ?H:#$d_regcmp HAS_REGCMP /* sysV */ diff --git a/mcon/U/d_scannl.U b/mcon/U/d_scannl.U index 74c0a3f..10ca68f 100644 --- a/mcon/U/d_scannl.U +++ b/mcon/U/d_scannl.U @@ -19,7 +19,7 @@ ?RCS: Baseline for dist 3.0 netwide release. ?RCS: ?X: -?X: Does the scanf routine read "\n" corretly ? This is was not +?X: Does the scanf routine read "\n" correctly ? This is was not ?X: the case on AIX... ?X: ?MAKE:d_scannl: cat +cc +ccflags rm Setvar @@ -41,7 +41,7 @@ : does scanf handle "\n" correctly ? echo " " val="$define" -?X: I really want to say "\n" instead of '\n', becasue I am refering +?X: I really want to say "\n" instead of '\n', because I am referring ?X: to the string given as argument to scanf(). echo 'Let'"'"'s see if scanf() handles "\\n" correctly...' >&4 $cat >try.c <<'EOCP' diff --git a/mcon/U/d_table.U b/mcon/U/d_table.U index f0df1c2..308bd48 100644 --- a/mcon/U/d_table.U +++ b/mcon/U/d_table.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: d_table.U,v $ ?RCS: Revision 3.0.1.2 1993/11/10 17:34:14 ram -?RCS: patch14: wrongly mentionned an obsolete symbol +?RCS: patch14: wrongly mentioned an obsolete symbol ?RCS: ?RCS: Revision 3.0.1.1 1993/10/16 13:49:29 ram ?RCS: patch12: created diff --git a/mcon/U/d_time.U b/mcon/U/d_time.U index 8e5efa7..c60353b 100644 --- a/mcon/U/d_time.U +++ b/mcon/U/d_time.U @@ -24,7 +24,7 @@ ?MAKE: -pick add $@ %< ?S:d_time: ?S: This variable conditionally defines the HAS_TIME symbol, which indicates -?S: that the time() routine exists. The time() routine is normaly +?S: that the time() routine exists. The time() routine is normally ?S: provided on UNIX systems. ?S:. ?S:timetype: diff --git a/mcon/U/d_times.U b/mcon/U/d_times.U index c22c31f..263f1a0 100644 --- a/mcon/U/d_times.U +++ b/mcon/U/d_times.U @@ -27,7 +27,7 @@ ?MAKE: -pick add $@ %< ?S:d_times: ?S: This variable conditionally defines the HAS_TIMES symbol, which indicates -?S: that the times() routine exists. The times() routine is normaly +?S: that the times() routine exists. The times() routine is normally ?S: provided on UNIX systems. You may have to include . ?S:. ?S:clocktype: diff --git a/mcon/U/enablenls.U b/mcon/U/enablenls.U index caeff33..743b04b 100644 --- a/mcon/U/enablenls.U +++ b/mcon/U/enablenls.U @@ -12,7 +12,7 @@ ?MAKE: -pick add $@ %< ?S:enablenls: ?S: This variable holds 'true' or 'false' depending on whether we're -?S: goint to enable Native Language Support (NLS). +?S: going to enable Native Language Support (NLS). ?S:. ?S:d_enablenls: ?S: This variable conditionally defines ENABLE_NLS. diff --git a/mcon/U/i_fcntl.U b/mcon/U/i_fcntl.U index 048eaff..6fe4464 100644 --- a/mcon/U/i_fcntl.U +++ b/mcon/U/i_fcntl.U @@ -25,7 +25,7 @@ ?H:. ?T:val ?X: Make line lists +i_sysfile to ensure tests for will be -?X: conducted prior tests for , hece making sure the h_sysfile +?X: conducted prior tests for , hence making sure the h_sysfile ?X: variable is correctly set when we reach that unit. ?LINT:set i_fcntl ?LINT:use i_sysfile diff --git a/mcon/U/i_sysioctl.U b/mcon/U/i_sysioctl.U index a7c35e0..0845fd4 100644 --- a/mcon/U/i_sysioctl.U +++ b/mcon/U/i_sysioctl.U @@ -46,7 +46,7 @@ ?S: This variable conditionally defines USE_IOCNOTTY to indicate that the ?S: ioctl() call with TIOCNOTTY should be used to void tty association. ?S: Otherwise (on USG probably), it is enough to close the standard file -?S: decriptors and do a setpgrp(). +?S: descriptors and do a setpgrp(). ?S:. ?C:I_SYS_IOCTL (I_SYSIOCTL): ?C: This symbol, if defined, indicates that exists and should diff --git a/mcon/U/i_termio.U b/mcon/U/i_termio.U index 2521e02..6a87619 100644 --- a/mcon/U/i_termio.U +++ b/mcon/U/i_termio.U @@ -13,7 +13,7 @@ ?RCS: patch36: call ./usg and ./Cppsym explicitely instead of relying on PATH ?RCS: ?RCS: Revision 3.0.1.3 1994/08/29 16:26:38 ram -?RCS: patch32: don't include all threee I_* symbols in config.h +?RCS: patch32: don't include all three I_* symbols in config.h ?RCS: patch32: (had forgotten to undo this part last time) ?RCS: ?RCS: Revision 3.0.1.2 1994/05/13 15:25:03 ram diff --git a/mcon/U/inc.U b/mcon/U/inc.U index 2c1f4ce..d91057e 100644 --- a/mcon/U/inc.U +++ b/mcon/U/inc.U @@ -20,7 +20,7 @@ ?S: often a local directory such as /usr/local/include. ?S:. ?S:incexp: -?S: This is the same as the inc variable, but is filename expaned +?S: This is the same as the inc variable, but is filename-expanded ?S: at configuration time for convenient use in your makefiles. ?S:. : determine where public header files go diff --git a/mcon/U/lex.U b/mcon/U/lex.U index 0968494..46d5b9d 100644 --- a/mcon/U/lex.U +++ b/mcon/U/lex.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: Orginal Author: Graham Stoney +?RCS: Original Author: Graham Stoney ?RCS: ?RCS: $Log: lex.U,v $ ?RCS: Revision 3.0.1.3 1994/10/29 16:22:50 ram diff --git a/mcon/U/libc.U b/mcon/U/libc.U index dafd669..b4ec983 100644 --- a/mcon/U/libc.U +++ b/mcon/U/libc.U @@ -264,14 +264,14 @@ $echo $n ".$c" ?X: $grep fprintf libc.tmp > libc.ptf ?X: -?X: In order to ehance readability and save some space, we define +?X: In order to enhance readability and save some space, we define ?X: some variables that will be "eval"ed. ?X: xscan='eval "libc.list"; $echo $n ".$c" >&4' xrun='eval "libc.list"; echo "done." >&4' ?X: BSD-like output, I and W types added for Linux ?X: Some versions of Linux include a leading __IO in the symbol name. -?X: HPUX10 reportedly has trailing spaces, though I'm suprised it has +?X: HPUX10 reportedly has trailing spaces, though I'm surprised it has ?X: BSD-like output. (AD). xxx='[ADTSIW]' if com="$sed -n -e 's/__IO//' -e 's/^.* $xxx *_[_.]*//p' -e 's/^.* $xxx *//p'";\ diff --git a/mcon/U/libs.U b/mcon/U/libs.U index f92fd0b..9217d49 100644 --- a/mcon/U/libs.U +++ b/mcon/U/libs.U @@ -88,7 +88,7 @@ ?INIT:libswanted='' ?X: This order is chosen so that libraries -lndir, -ldir, -lucb, -lbsd, ?X: -lBSD, -lPW, and -lx only get used if there are unresolved -?X: routines at link time. Usually, these are backwards compatability +?X: routines at link time. Usually, these are backwards compatibility ?X: libraries, and may not be as reliable as the standard c library. ?X: ?X: The -lsocket -linet -lnsl order has been reported to be necessary @@ -173,7 +173,7 @@ for thislib in $libswanted; do ?X: ?X: It is not sufficient to find a .so on the disk. We must make sure ?X: that we can indeed supply the -lfoo line on the cc line to link against -?X: that library. On Linux for instance, a versionned .so will not be +?X: that library. On Linux for instance, a versioned .so will not be ?X: implicitly linked against, whereas it will work fine on Solaris 2.6. ?X: --RAM, 10/10/2003 ?X: @@ -211,7 +211,7 @@ for thislib in $libswanted; do done if $test ! -f "$xxx"; then ?X: -?X: Try linking aginst the library: gcc on linux platforms is notorious for +?X: Try linking against the library: gcc on linux platforms is notorious for ?X: using complex library search logic, especially on systems mixing 32-bit ?X: and 64-bit versions. ?X: diff --git a/mcon/U/make.U b/mcon/U/make.U index 98eb0a8..540ea46 100644 --- a/mcon/U/make.U +++ b/mcon/U/make.U @@ -39,7 +39,7 @@ echo " " echo "Checking if your $make program sets \$(MAKE)..." >&4 case "$make_set_make" in '') -?X: Use sed so we don't have a line begining with @echo. Metaconfig +?X: Use sed so we don't have a line beginning with @echo. Metaconfig ?X: will think that's a command like @if or @end. $sed 's/^X //' > testmake.mak << 'EOF' Xall: diff --git a/mcon/U/mallocsrc.U b/mcon/U/mallocsrc.U index 66d304e..a71fa59 100644 --- a/mcon/U/mallocsrc.U +++ b/mcon/U/mallocsrc.U @@ -30,7 +30,7 @@ ?S:usemymalloc: ?S: This variable contains y if the malloc that comes with this package ?S: is desired over the system's version of malloc. People often include -?S: special versions of malloc for effiency, but such versions are often +?S: special versions of malloc for efficiency, but such versions are often ?S: less portable. See also mallocsrc and mallocobj. ?S: If this is 'y', then -lmalloc is removed from $libs. ?S:. diff --git a/mcon/U/nlist_pfx.U b/mcon/U/nlist_pfx.U index 55a4658..e2d50b9 100644 --- a/mcon/U/nlist_pfx.U +++ b/mcon/U/nlist_pfx.U @@ -19,7 +19,7 @@ +cc +ccflags ?MAKE: -pick add $@ %< ?S:nlist_pfx: -?S: This variable holds any characters which preceed the symbol name +?S: This variable holds any characters which precede the symbol name ?S: when doing an nlist search. ?S:. ?S:nlist_fnd: diff --git a/mcon/U/perlpath.U b/mcon/U/perlpath.U index 30334a8..619807c 100644 --- a/mcon/U/perlpath.U +++ b/mcon/U/perlpath.U @@ -26,10 +26,10 @@ ?Y:TOP ?S:perlpath: ?S: This variable contains the eventual value of the PERLPATH symbol, -?S: which contains the absolute location of the perl interpeter. +?S: which contains the absolute location of the perl interpreter. ?S:. ?C:PERLPATH: -?C: This symbol contains the absolute location of the perl interpeter. +?C: This symbol contains the absolute location of the perl interpreter. ?C:. ?H:#define PERLPATH "$perlpath" /**/ ?H:. diff --git a/mcon/U/prototype.U b/mcon/U/prototype.U index f254e2c..db698b8 100644 --- a/mcon/U/prototype.U +++ b/mcon/U/prototype.U @@ -25,7 +25,7 @@ ?MAKE: -pick add $@ %< ?S:prototype: ?S: This variable holds the eventual value of CAN_PROTOTYPE, which -?S: indicates the C compiler can handle funciton prototypes. +?S: indicates the C compiler can handle function prototypes. ?S:. ?C:CAN_PROTOTYPE ~ %<: ?C: If defined, this macro indicates that the C compiler can handle diff --git a/mcon/U/sitearch.U b/mcon/U/sitearch.U index 47116dc..f224cfc 100644 --- a/mcon/U/sitearch.U +++ b/mcon/U/sitearch.U @@ -51,7 +51,7 @@ ?T:xxx : determine where site specific architecture-dependent libraries go. xxx=`echo $sitelib/$archname | sed 's!^$prefix!!'` -: xxx is usuually lib/site_perl/archname. +: xxx is usually lib/site_perl/archname. set sitearch sitearch none eval $prefixit case "$sitearch" in diff --git a/mcon/U/sitelib.U b/mcon/U/sitelib.U index f2ba295..f6f197e 100644 --- a/mcon/U/sitelib.U +++ b/mcon/U/sitelib.U @@ -54,7 +54,7 @@ set sitelib sitelib eval $prefixit case "$sitelib" in '') -?X: remove any trailing -3.0 or other version indification +?X: remove any trailing -3.0 or other version indentification prog=`echo $package | $sed 's/-*[0-9.]*$//'` dflt="$privlib/site_$prog" ;; *) dflt="$sitelib" ;; diff --git a/mcon/U/src.U b/mcon/U/src.U index e939a4c..4d84bcc 100644 --- a/mcon/U/src.U +++ b/mcon/U/src.U @@ -47,7 +47,7 @@ case "$src" in esac ?X: ?X: Now check whether we have found the right source tree (i.e. the one for the -?X: package we're abount to configure). The original unit from Tom Tromey forced +?X: package we're about to configure). The original unit from Tom Tromey forced ?X: the user to pick a unique file from his distribution, and we were merely ?X: checking the existence of that file. I prefer to rely on Configure (which ?X: we know *is* present since this unit is part of it!) and look for the diff --git a/mcon/U/startperl.U b/mcon/U/startperl.U index dbc6dfb..7428b7e 100644 --- a/mcon/U/startperl.U +++ b/mcon/U/startperl.U @@ -25,7 +25,7 @@ ?S: eval 'exec perl -S $0 ${1+"$@"}' ?S: if $running_under_some_shell; ?S: to guarantee perl startup should the shell execute the script. Note -?S: that this magic incatation is not understood by csh. +?S: that this magic incantation is not understood by csh. ?S:. ?C:STARTPERL: ?C: This symbol is the string that should be put on the front of a diff --git a/mcon/U/uidtype.U b/mcon/U/uidtype.U index 6ac2aeb..4e06355 100644 --- a/mcon/U/uidtype.U +++ b/mcon/U/uidtype.U @@ -16,7 +16,7 @@ ?RCS: patch30: comment for uidtype referred to the obsoleted symbol ?RCS: ?RCS: Revision 3.0.1.1 1994/05/13 15:28:27 ram -?RCS: patch27: made conformant to its gidtype.U companion +?RCS: patch27: made conform to its gidtype.U companion ?RCS: patch27: question now explicitely mentions getuid() ?RCS: ?RCS: Revision 3.0 1993/08/18 12:09:56 ram diff --git a/mcon/U/usenm.U b/mcon/U/usenm.U index a868af5..2e3dfad 100644 --- a/mcon/U/usenm.U +++ b/mcon/U/usenm.U @@ -40,7 +40,7 @@ ?S: Maybe Linux should just always set usenm=false. ?S:. : see if nm is to be used to determine whether a symbol is defined or not -?X: If there is enough enquiries, it might be worth to wait for the nm +?X: If there is enough inquiries, it might be worth to wait for the nm ?X: extraction. Otherwise, the C compilations might be a better deal. ?X: ?X: Don't bother if we're using GNU libc -- skimo diff --git a/mcon/U/usrinc.U b/mcon/U/usrinc.U index e3ac4e6..e1e1c04 100644 --- a/mcon/U/usrinc.U +++ b/mcon/U/usrinc.U @@ -16,7 +16,7 @@ ?RCS: patch54: ensure that ./mips always exists (ADO) ?RCS: ?RCS: Revision 3.0.1.1 1994/05/06 15:18:31 ram -?RCS: patch23: ensure usrinc value is preserved accross sessions (WED) +?RCS: patch23: ensure usrinc value is preserved across sessions (WED) ?RCS: ?RCS: Revision 3.0 1993/08/18 12:09:58 ram ?RCS: Baseline for dist 3.0 netwide release. diff --git a/mcon/U/vaproto.U b/mcon/U/vaproto.U index 8ae9674..986c451 100644 --- a/mcon/U/vaproto.U +++ b/mcon/U/vaproto.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: Orginal Author: Graham Stoney +?RCS: Original Author: Graham Stoney ?RCS: ?RCS: $Log: vaproto.U,v $ ?RCS: Revision 3.0.1.1 1994/01/24 14:17:16 ram diff --git a/mcon/U/warnflags.U b/mcon/U/warnflags.U index 0f36821..97e0c8e 100644 --- a/mcon/U/warnflags.U +++ b/mcon/U/warnflags.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic Licence; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?RCS: Orginal Author: Graham Stoney +?RCS: Original Author: Graham Stoney ?RCS: ?RCS: $Log: warnflags.U,v $ ?RCS: Revision 3.0 1993/08/18 12:10:02 ram -- cgit v1.2.3 From a48d4a094464be38b11b832a31394b240e88ea83 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 8 May 2013 17:58:00 +0000 Subject: Fixed spelling: Licence -> License. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@167 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/AAAAA.U | 4 ++-- mcon/U/Alpha_mieee.U | 4 ++-- mcon/U/Assert.U | 4 ++-- mcon/U/Begin.U | 4 ++-- mcon/U/Checkcc.U | 4 ++-- mcon/U/Chk_MANI.U | 4 ++-- mcon/U/Chk_whoami.U | 4 ++-- mcon/U/Compile.U | 4 ++-- mcon/U/Config_h.U | 4 ++-- mcon/U/Config_sh.U | 4 ++-- mcon/U/Configdir.U | 4 ++-- mcon/U/Cppsym.U | 4 ++-- mcon/U/Cross.U | 4 ++-- mcon/U/Csym.U | 4 ++-- mcon/U/End.U | 4 ++-- mcon/U/Extract.U | 4 ++-- mcon/U/Extractall.U | 4 ++-- mcon/U/Filexp.U | 4 ++-- mcon/U/Findhdr.U | 4 ++-- mcon/U/Finish.U | 4 ++-- mcon/U/GCC_pipe.U | 4 ++-- mcon/U/Getfile.U | 4 ++-- mcon/U/Guess.U | 4 ++-- mcon/U/Head.U | 4 ++-- mcon/U/Inhdr.U | 4 ++-- mcon/U/Init.U | 4 ++-- mcon/U/Inlibc.U | 4 ++-- mcon/U/Instruct.U | 4 ++-- mcon/U/Largefile.U | 4 ++-- mcon/U/Loc.U | 4 ++-- mcon/U/Loc_sed.U | 4 ++-- mcon/U/Magic_h.U | 4 ++-- mcon/U/MailAuthor.U | 4 ++-- mcon/U/MailList.U | 4 ++-- mcon/U/Mips.U | 4 ++-- mcon/U/Mkdirp.U | 4 ++-- mcon/U/Mksymlinks.U | 4 ++-- mcon/U/Myinit.U | 4 ++-- mcon/U/Myread.U | 4 ++-- mcon/U/Nothing.U | 4 ++-- mcon/U/Null.U | 4 ++-- mcon/U/Obsol_h.U | 4 ++-- mcon/U/Obsol_sh.U | 4 ++-- mcon/U/Oldconfig.U | 4 ++-- mcon/U/Oldsym.U | 4 ++-- mcon/U/Options.U | 4 ++-- mcon/U/Prefixit.U | 4 ++-- mcon/U/Prefixup.U | 4 ++-- mcon/U/Rcs.U | 4 ++-- mcon/U/Sendfile64.U | 4 ++-- mcon/U/Setvar.U | 4 ++-- mcon/U/Signal.U | 4 ++-- mcon/U/Tr.U | 4 ++-- mcon/U/Trylink.U | 4 ++-- mcon/U/Typedef.U | 4 ++-- mcon/U/Unix.U | 4 ++-- mcon/U/Warn.U | 4 ++-- mcon/U/Warn_v7EXT.U | 4 ++-- mcon/U/Warn_v7ND.U | 4 ++-- mcon/U/Whoa.U | 4 ++-- mcon/U/abortsig.U | 4 ++-- mcon/U/active.U | 4 ++-- mcon/U/afs.U | 4 ++-- mcon/U/alignbytes.U | 4 ++-- mcon/U/archlib.U | 4 ++-- mcon/U/archname.U | 4 ++-- mcon/U/baserev.U | 4 ++-- mcon/U/basicshell.U | 4 ++-- mcon/U/bin.U | 4 ++-- mcon/U/bitpbyte.U | 4 ++-- mcon/U/byteorder.U | 4 ++-- mcon/U/cc.U | 4 ++-- mcon/U/ccflags.U | 4 ++-- mcon/U/cf_email.U | 4 ++-- mcon/U/cf_name.U | 4 ++-- mcon/U/cf_who.U | 4 ++-- mcon/U/charorder.U | 4 ++-- mcon/U/charsize.U | 4 ++-- mcon/U/contains.U | 4 ++-- mcon/U/cpp_stuff.U | 4 ++-- mcon/U/cpp_trad.U | 4 ++-- mcon/U/cppfilecom.U | 4 ++-- mcon/U/cppstdin.U | 4 ++-- mcon/U/d_NOFILE.U | 4 ++-- mcon/U/d_NeWS.U | 4 ++-- mcon/U/d_PORTAR.U | 4 ++-- mcon/U/d_SHM_MAC.U | 4 ++-- mcon/U/d_access.U | 4 ++-- mcon/U/d_alarm.U | 4 ++-- mcon/U/d_arc4random.U | 4 ++-- mcon/U/d_attribut.U | 4 ++-- mcon/U/d_backtrace.U | 4 ++-- mcon/U/d_bcmp.U | 4 ++-- mcon/U/d_bcopy.U | 4 ++-- mcon/U/d_bfd_lib.U | 4 ++-- mcon/U/d_bindtxtcode.U | 4 ++-- mcon/U/d_brokstat.U | 4 ++-- mcon/U/d_bsdjmp.U | 4 ++-- mcon/U/d_built_clz.U | 4 ++-- mcon/U/d_built_ctz.U | 4 ++-- mcon/U/d_built_memcmp.U | 4 ++-- mcon/U/d_built_popcount.U | 4 ++-- mcon/U/d_byacc.U | 4 ++-- mcon/U/d_bzero.U | 4 ++-- mcon/U/d_casti32.U | 4 ++-- mcon/U/d_castneg.U | 4 ++-- mcon/U/d_cbrt.U | 4 ++-- mcon/U/d_charsprf.U | 4 ++-- mcon/U/d_chown.U | 4 ++-- mcon/U/d_chroot.U | 4 ++-- mcon/U/d_chsize.U | 4 ++-- mcon/U/d_ckeypad.U | 4 ++-- mcon/U/d_closedir.U | 4 ++-- mcon/U/d_closefrom.U | 4 ++-- mcon/U/d_const.U | 4 ++-- mcon/U/d_crypt.U | 4 ++-- mcon/U/d_csh.U | 4 ++-- mcon/U/d_ctermid.U | 4 ++-- mcon/U/d_cuserid.U | 4 ++-- mcon/U/d_datastart_symbol.U | 4 ++-- mcon/U/d_dbl_dig.U | 4 ++-- mcon/U/d_debugging.U | 4 ++-- mcon/U/d_deflate.U | 4 ++-- mcon/U/d_devpoll.U | 4 ++-- mcon/U/d_difftime.U | 4 ++-- mcon/U/d_dirent_d_type.U | 4 ++-- mcon/U/d_dladdr.U | 4 ++-- mcon/U/d_dlerror.U | 4 ++-- mcon/U/d_dliterphdr.U | 4 ++-- mcon/U/d_dlopen.U | 4 ++-- mcon/U/d_dosuid.U | 4 ++-- mcon/U/d_drem.U | 4 ++-- mcon/U/d_dup2.U | 4 ++-- mcon/U/d_end_symbol.U | 4 ++-- mcon/U/d_eofpipe.U | 4 ++-- mcon/U/d_epoll.U | 4 ++-- mcon/U/d_etext_symbol.U | 4 ++-- mcon/U/d_euc2jis.U | 4 ++-- mcon/U/d_fast_assert.U | 4 ++-- mcon/U/d_fchmod.U | 4 ++-- mcon/U/d_fchown.U | 4 ++-- mcon/U/d_fcntl.U | 4 ++-- mcon/U/d_fd_set.U | 4 ++-- mcon/U/d_ffs.U | 4 ++-- mcon/U/d_fgetpos.U | 4 ++-- mcon/U/d_flexfnam.U | 4 ++-- mcon/U/d_flock.U | 4 ++-- mcon/U/d_fmod.U | 4 ++-- mcon/U/d_fork.U | 4 ++-- mcon/U/d_fsetpos.U | 4 ++-- mcon/U/d_ftime.U | 4 ++-- mcon/U/d_ftrncate.U | 4 ++-- mcon/U/d_gconvert.U | 4 ++-- mcon/U/d_getaddrinfo.U | 4 ++-- mcon/U/d_getcontext.U | 4 ++-- mcon/U/d_geteuid.U | 4 ++-- mcon/U/d_getgrps.U | 4 ++-- mcon/U/d_gethbynm.U | 4 ++-- mcon/U/d_gethent.U | 4 ++-- mcon/U/d_gethid.U | 4 ++-- mcon/U/d_gethname.U | 4 ++-- mcon/U/d_getifaddrs.U | 4 ++-- mcon/U/d_getinvent.U | 4 ++-- mcon/U/d_getlogin.U | 4 ++-- mcon/U/d_getnameinfo.U | 4 ++-- mcon/U/d_getopt.U | 4 ++-- mcon/U/d_getpagsz.U | 4 ++-- mcon/U/d_getpgid.U | 4 ++-- mcon/U/d_getpgrp.U | 4 ++-- mcon/U/d_getpgrp2.U | 4 ++-- mcon/U/d_getppid.U | 4 ++-- mcon/U/d_getprior.U | 4 ++-- mcon/U/d_getpwent.U | 4 ++-- mcon/U/d_getrlimit.U | 4 ++-- mcon/U/d_gettext.U | 4 ++-- mcon/U/d_getuid.U | 4 ++-- mcon/U/d_getwd.U | 4 ++-- mcon/U/d_gnugettext.U | 4 ++-- mcon/U/d_gnulibc.U | 4 ++-- mcon/U/d_group.U | 4 ++-- mcon/U/d_havetlib.U | 4 ++-- mcon/U/d_herror.U | 4 ++-- mcon/U/d_hidnet.U | 4 ++-- mcon/U/d_hstrerror.U | 4 ++-- mcon/U/d_htonl.U | 4 ++-- mcon/U/d_iconv.U | 4 ++-- mcon/U/d_ieee754.U | 4 ++-- mcon/U/d_inetaton.U | 4 ++-- mcon/U/d_inetd.U | 4 ++-- mcon/U/d_inflate.U | 4 ++-- mcon/U/d_initstate.U | 4 ++-- mcon/U/d_internet.U | 4 ++-- mcon/U/d_iptos.U | 4 ++-- mcon/U/d_ipv6.U | 4 ++-- mcon/U/d_isascii.U | 4 ++-- mcon/U/d_itimer.U | 4 ++-- mcon/U/d_keepsig.U | 4 ++-- mcon/U/d_kevent_udata.U | 4 ++-- mcon/U/d_killpg.U | 4 ++-- mcon/U/d_kqueue.U | 4 ++-- mcon/U/d_link.U | 4 ++-- mcon/U/d_linuxstd.U | 4 ++-- mcon/U/d_locale_charset.U | 4 ++-- mcon/U/d_locconv.U | 4 ++-- mcon/U/d_lockf.U | 4 ++-- mcon/U/d_lstat.U | 4 ++-- mcon/U/d_madvise.U | 4 ++-- mcon/U/d_mblen.U | 4 ++-- mcon/U/d_mbstowcs.U | 4 ++-- mcon/U/d_mbtowc.U | 4 ++-- mcon/U/d_memalign.U | 4 ++-- mcon/U/d_memccpy.U | 4 ++-- mcon/U/d_memchr.U | 4 ++-- mcon/U/d_memcmp.U | 4 ++-- mcon/U/d_memcpy.U | 4 ++-- mcon/U/d_memmove.U | 4 ++-- mcon/U/d_mempcpy.U | 4 ++-- mcon/U/d_memset.U | 4 ++-- mcon/U/d_mkdir.U | 4 ++-- mcon/U/d_mkfifo.U | 4 ++-- mcon/U/d_mktime.U | 4 ++-- mcon/U/d_mmap.U | 4 ++-- mcon/U/d_msem_lck.U | 4 ++-- mcon/U/d_msg.U | 4 ++-- mcon/U/d_msg_flags.U | 4 ++-- mcon/U/d_msgctl.U | 4 ++-- mcon/U/d_msgget.U | 4 ++-- mcon/U/d_msgrcv.U | 4 ++-- mcon/U/d_msgsnd.U | 4 ++-- mcon/U/d_msync.U | 4 ++-- mcon/U/d_munmap.U | 4 ++-- mcon/U/d_nanosleep.U | 4 ++-- mcon/U/d_newsadm.U | 4 ++-- mcon/U/d_nice.U | 4 ++-- mcon/U/d_nls.U | 4 ++-- mcon/U/d_nolnbuf.U | 4 ++-- mcon/U/d_normsig.U | 4 ++-- mcon/U/d_open3.U | 4 ++-- mcon/U/d_passwd.U | 4 ++-- mcon/U/d_pathconf.U | 4 ++-- mcon/U/d_pause.U | 4 ++-- mcon/U/d_perror.U | 4 ++-- mcon/U/d_pidcheck.U | 4 ++-- mcon/U/d_pipe.U | 4 ++-- mcon/U/d_poll.U | 4 ++-- mcon/U/d_popen.U | 4 ++-- mcon/U/d_portable.U | 4 ++-- mcon/U/d_posix_fadvise.U | 4 ++-- mcon/U/d_posix_memalign.U | 4 ++-- mcon/U/d_pread.U | 4 ++-- mcon/U/d_preadv.U | 4 ++-- mcon/U/d_psignal.U | 4 ++-- mcon/U/d_ptattr_setstack.U | 4 ++-- mcon/U/d_pwrite.U | 4 ++-- mcon/U/d_pwritev.U | 4 ++-- mcon/U/d_random.U | 4 ++-- mcon/U/d_raster.U | 4 ++-- mcon/U/d_rdchk.U | 4 ++-- mcon/U/d_readdir.U | 4 ++-- mcon/U/d_readlink.U | 4 ++-- mcon/U/d_recvmsg.U | 4 ++-- mcon/U/d_regcmp.U | 4 ++-- mcon/U/d_regcomp.U | 4 ++-- mcon/U/d_regparm.U | 4 ++-- mcon/U/d_rename.U | 4 ++-- mcon/U/d_rmdir.U | 4 ++-- mcon/U/d_rusage.U | 4 ++-- mcon/U/d_sa_interrupt.U | 4 ++-- mcon/U/d_safebcpy.U | 4 ++-- mcon/U/d_safemcpy.U | 4 ++-- mcon/U/d_sanemcmp.U | 4 ++-- mcon/U/d_sbrk.U | 4 ++-- mcon/U/d_scandir.U | 4 ++-- mcon/U/d_scannl.U | 4 ++-- mcon/U/d_sched_yield.U | 4 ++-- mcon/U/d_scorfl.U | 4 ++-- mcon/U/d_select.U | 4 ++-- mcon/U/d_sem.U | 4 ++-- mcon/U/d_semctl.U | 4 ++-- mcon/U/d_semget.U | 4 ++-- mcon/U/d_semop.U | 4 ++-- mcon/U/d_sendfile.U | 4 ++-- mcon/U/d_sendmsg.U | 4 ++-- mcon/U/d_setegid.U | 4 ++-- mcon/U/d_seteuid.U | 4 ++-- mcon/U/d_setgrps.U | 4 ++-- mcon/U/d_setlnbuf.U | 4 ++-- mcon/U/d_setlocale.U | 4 ++-- mcon/U/d_setpgid.U | 4 ++-- mcon/U/d_setpgrp.U | 4 ++-- mcon/U/d_setpgrp2.U | 4 ++-- mcon/U/d_setprior.U | 4 ++-- mcon/U/d_setproctitle.U | 4 ++-- mcon/U/d_setregid.U | 4 ++-- mcon/U/d_setreuid.U | 4 ++-- mcon/U/d_setrgid.U | 4 ++-- mcon/U/d_setrlimit.U | 4 ++-- mcon/U/d_setruid.U | 4 ++-- mcon/U/d_setsid.U | 4 ++-- mcon/U/d_sgndchr.U | 4 ++-- mcon/U/d_shm.U | 4 ++-- mcon/U/d_shmat.U | 4 ++-- mcon/U/d_shmctl.U | 4 ++-- mcon/U/d_shmdt.U | 4 ++-- mcon/U/d_shmget.U | 4 ++-- mcon/U/d_sigaction.U | 4 ++-- mcon/U/d_sigblock.U | 4 ++-- mcon/U/d_sighold.U | 4 ++-- mcon/U/d_siglist.U | 4 ++-- mcon/U/d_sigprocmask.U | 4 ++-- mcon/U/d_sigsetjmp.U | 4 ++-- mcon/U/d_sigsetmk.U | 4 ++-- mcon/U/d_sigvec.U | 4 ++-- mcon/U/d_sjis2jis.U | 4 ++-- mcon/U/d_sockaddr_in_sin_len.U | 4 ++-- mcon/U/d_sockaddr_un.U | 4 ++-- mcon/U/d_socker_get.U | 4 ++-- mcon/U/d_socket.U | 4 ++-- mcon/U/d_speedopt.U | 4 ++-- mcon/U/d_srandom.U | 4 ++-- mcon/U/d_stat.U | 4 ++-- mcon/U/d_statblks.U | 4 ++-- mcon/U/d_statfs.U | 4 ++-- mcon/U/d_statvfs.U | 4 ++-- mcon/U/d_stdstdio.U | 4 ++-- mcon/U/d_strcasestr.U | 4 ++-- mcon/U/d_strccmp.U | 4 ++-- mcon/U/d_strchr.U | 4 ++-- mcon/U/d_strcoll.U | 4 ++-- mcon/U/d_strcspn.U | 4 ++-- mcon/U/d_strctcpy.U | 4 ++-- mcon/U/d_strdup.U | 4 ++-- mcon/U/d_strerror.U | 4 ++-- mcon/U/d_strftime.U | 4 ++-- mcon/U/d_strlcat.U | 4 ++-- mcon/U/d_strlcpy.U | 4 ++-- mcon/U/d_strstr.U | 4 ++-- mcon/U/d_strtod.U | 4 ++-- mcon/U/d_strtok.U | 4 ++-- mcon/U/d_strtol.U | 4 ++-- mcon/U/d_strtoul.U | 4 ++-- mcon/U/d_strxfrm.U | 4 ++-- mcon/U/d_su_chown.U | 4 ++-- mcon/U/d_symlink.U | 4 ++-- mcon/U/d_sync_atomic.U | 4 ++-- mcon/U/d_syscall.U | 4 ++-- mcon/U/d_sysconf.U | 4 ++-- mcon/U/d_sysctl.U | 4 ++-- mcon/U/d_syslog.U | 4 ++-- mcon/U/d_system.U | 4 ++-- mcon/U/d_table.U | 4 ++-- mcon/U/d_tcgtpgrp.U | 4 ++-- mcon/U/d_tcstpgrp.U | 4 ++-- mcon/U/d_time.U | 4 ++-- mcon/U/d_times.U | 4 ++-- mcon/U/d_tminsys.U | 4 ++-- mcon/U/d_truncate.U | 4 ++-- mcon/U/d_ttyname.U | 4 ++-- mcon/U/d_tzmin.U | 4 ++-- mcon/U/d_tzname.U | 4 ++-- mcon/U/d_uctx_mctx.U | 4 ++-- mcon/U/d_uctx_mctx_gregs.U | 4 ++-- mcon/U/d_ulimit.U | 4 ++-- mcon/U/d_umask.U | 4 ++-- mcon/U/d_usendir.U | 4 ++-- mcon/U/d_usleep.U | 4 ++-- mcon/U/d_uwait.U | 4 ++-- mcon/U/d_vfork.U | 4 ++-- mcon/U/d_voidsig.U | 4 ++-- mcon/U/d_volatile.U | 4 ++-- mcon/U/d_vprintf.U | 4 ++-- mcon/U/d_vsnprintf.U | 4 ++-- mcon/U/d_wait3.U | 4 ++-- mcon/U/d_wait4.U | 4 ++-- mcon/U/d_waitpid.U | 4 ++-- mcon/U/d_wcstombs.U | 4 ++-- mcon/U/d_wctomb.U | 4 ++-- mcon/U/d_wifstat.U | 4 ++-- mcon/U/d_xdrs.U | 4 ++-- mcon/U/defeditor.U | 4 ++-- mcon/U/doublesize.U | 4 ++-- mcon/U/ebcdic.U | 4 ++-- mcon/U/enablenls.U | 4 ++-- mcon/U/errnolist.U | 4 ++-- mcon/U/etc.U | 4 ++-- mcon/U/fieldn.U | 4 ++-- mcon/U/filexp_path.U | 4 ++-- mcon/U/floatsize.U | 4 ++-- mcon/U/fpostype.U | 4 ++-- mcon/U/fpu.U | 4 ++-- mcon/U/gccvers.U | 4 ++-- mcon/U/gidtype.U | 4 ++-- mcon/U/groupstype.U | 4 ++-- mcon/U/h_fcntl.U | 4 ++-- mcon/U/h_sysfile.U | 4 ++-- mcon/U/i_alloca.U | 4 ++-- mcon/U/i_arpainet.U | 4 ++-- mcon/U/i_db.U | 4 ++-- mcon/U/i_dbm.U | 4 ++-- mcon/U/i_dirent.U | 4 ++-- mcon/U/i_dld.U | 4 ++-- mcon/U/i_dlfcn.U | 4 ++-- mcon/U/i_execinfo.U | 4 ++-- mcon/U/i_fcntl.U | 4 ++-- mcon/U/i_float.U | 4 ++-- mcon/U/i_gdbm.U | 4 ++-- mcon/U/i_grp.U | 4 ++-- mcon/U/i_iconv.U | 4 ++-- mcon/U/i_ifaddrs.U | 4 ++-- mcon/U/i_inttypes.U | 4 ++-- mcon/U/i_invent.U | 4 ++-- mcon/U/i_langinfo.U | 4 ++-- mcon/U/i_libcharset.U | 4 ++-- mcon/U/i_libintl.U | 4 ++-- mcon/U/i_limits.U | 4 ++-- mcon/U/i_linux_netlink.U | 4 ++-- mcon/U/i_linux_rtnetlink.U | 4 ++-- mcon/U/i_locale.U | 4 ++-- mcon/U/i_malloc.U | 4 ++-- mcon/U/i_math.U | 4 ++-- mcon/U/i_memory.U | 4 ++-- mcon/U/i_mswsock.U | 4 ++-- mcon/U/i_ndbm.U | 4 ++-- mcon/U/i_netdb.U | 4 ++-- mcon/U/i_neterrno.U | 4 ++-- mcon/U/i_netif.U | 4 ++-- mcon/U/i_netroute.U | 4 ++-- mcon/U/i_niin.U | 4 ++-- mcon/U/i_niip.U | 4 ++-- mcon/U/i_poll.U | 4 ++-- mcon/U/i_pthread.U | 4 ++-- mcon/U/i_pwd.U | 4 ++-- mcon/U/i_regex.U | 4 ++-- mcon/U/i_sched.U | 4 ++-- mcon/U/i_sfio.U | 4 ++-- mcon/U/i_stddef.U | 4 ++-- mcon/U/i_stdlib.U | 4 ++-- mcon/U/i_string.U | 4 ++-- mcon/U/i_sysdir.U | 4 ++-- mcon/U/i_sysfile.U | 4 ++-- mcon/U/i_sysioctl.U | 4 ++-- mcon/U/i_sysipc.U | 4 ++-- mcon/U/i_sysmman.U | 4 ++-- mcon/U/i_sysmount.U | 4 ++-- mcon/U/i_sysndir.U | 4 ++-- mcon/U/i_sysparam.U | 4 ++-- mcon/U/i_syspoll.U | 4 ++-- mcon/U/i_sysresrc.U | 4 ++-- mcon/U/i_sysselct.U | 4 ++-- mcon/U/i_syssem.U | 4 ++-- mcon/U/i_syssendfile.U | 4 ++-- mcon/U/i_syssock.U | 4 ++-- mcon/U/i_sysstat.U | 4 ++-- mcon/U/i_sysstatvfs.U | 4 ++-- mcon/U/i_syssysctl.U | 4 ++-- mcon/U/i_systable.U | 4 ++-- mcon/U/i_systimeb.U | 4 ++-- mcon/U/i_systimes.U | 4 ++-- mcon/U/i_systwgcf.U | 4 ++-- mcon/U/i_systypes.U | 4 ++-- mcon/U/i_sysun.U | 4 ++-- mcon/U/i_sysutsname.U | 4 ++-- mcon/U/i_sysvfs.U | 4 ++-- mcon/U/i_syswait.U | 4 ++-- mcon/U/i_termio.U | 4 ++-- mcon/U/i_time.U | 4 ++-- mcon/U/i_ucontext.U | 4 ++-- mcon/U/i_unistd.U | 4 ++-- mcon/U/i_utime.U | 4 ++-- mcon/U/i_values.U | 4 ++-- mcon/U/i_varhdr.U | 4 ++-- mcon/U/i_vfork.U | 4 ++-- mcon/U/i_whoami.U | 4 ++-- mcon/U/i_winsock2.U | 4 ++-- mcon/U/i_ws2tcpip.U | 4 ++-- mcon/U/i_zlib.U | 4 ++-- mcon/U/ilp.U | 4 ++-- mcon/U/inc.U | 4 ++-- mcon/U/install.U | 4 ++-- mcon/U/intsize.U | 4 ++-- mcon/U/ipc.U | 4 ++-- mcon/U/issymlink.U | 4 ++-- mcon/U/kernel.U | 4 ++-- mcon/U/lex.U | 4 ++-- mcon/U/lib.U | 4 ++-- mcon/U/libc.U | 4 ++-- mcon/U/libdbm.U | 4 ++-- mcon/U/libflex.U | 4 ++-- mcon/U/libnlist.U | 4 ++-- mcon/U/libnm.U | 4 ++-- mcon/U/libpth.U | 4 ++-- mcon/U/libs.U | 4 ++-- mcon/U/libyacc.U | 4 ++-- mcon/U/lintlib.U | 4 ++-- mcon/U/lns.U | 4 ++-- mcon/U/locale.U | 4 ++-- mcon/U/locdist.U | 4 ++-- mcon/U/longsize.U | 4 ++-- mcon/U/lseektype.U | 4 ++-- mcon/U/maildir.U | 4 ++-- mcon/U/mailer.U | 4 ++-- mcon/U/mailfile.U | 4 ++-- mcon/U/make.U | 4 ++-- mcon/U/mallocsrc.U | 4 ++-- mcon/U/man1dir.U | 4 ++-- mcon/U/man3dir.U | 4 ++-- mcon/U/manfmt.U | 4 ++-- mcon/U/mansrc.U | 4 ++-- mcon/U/mboxchar.U | 4 ++-- mcon/U/mkdep.U | 4 ++-- mcon/U/models.U | 4 ++-- mcon/U/modetype.U | 4 ++-- mcon/U/msgmerge_update.U | 4 ++-- mcon/U/myhostname.U | 4 ++-- mcon/U/n.U | 4 ++-- mcon/U/nametype.U | 4 ++-- mcon/U/nblock_io.U | 4 ++-- mcon/U/newslevel.U | 4 ++-- mcon/U/newslib.U | 4 ++-- mcon/U/newsspool.U | 4 ++-- mcon/U/nis.U | 4 ++-- mcon/U/nlist_pfx.U | 4 ++-- mcon/U/official.U | 4 ++-- mcon/U/orderlib.U | 4 ++-- mcon/U/orgname.U | 4 ++-- mcon/U/packadmin.U | 4 ++-- mcon/U/package.U | 4 ++-- mcon/U/pager.U | 4 ++-- mcon/U/patchlevel.U | 4 ++-- mcon/U/perlpath.U | 4 ++-- mcon/U/pidtype.U | 4 ++-- mcon/U/pkgsrc.U | 4 ++-- mcon/U/prefix.U | 4 ++-- mcon/U/prefshell.U | 4 ++-- mcon/U/privlib.U | 4 ++-- mcon/U/prototype.U | 4 ++-- mcon/U/ptrsize.U | 4 ++-- mcon/U/randbits.U | 4 ++-- mcon/U/randfunc.U | 4 ++-- mcon/U/rcs_branch.U | 4 ++-- mcon/U/registers.U | 4 ++-- mcon/U/rootid.U | 4 ++-- mcon/U/sbrksmart.U | 4 ++-- mcon/U/sbrktype.U | 4 ++-- mcon/U/scriptdir.U | 4 ++-- mcon/U/selecttype.U | 4 ++-- mcon/U/sh.U | 4 ++-- mcon/U/shm_for.U | 4 ++-- mcon/U/sig_name.U | 4 ++-- mcon/U/sitearch.U | 4 ++-- mcon/U/sitelib.U | 4 ++-- mcon/U/sizetype.U | 4 ++-- mcon/U/so.U | 4 ++-- mcon/U/sockopt.U | 4 ++-- mcon/U/spitshell.U | 4 ++-- mcon/U/src.U | 4 ++-- mcon/U/ssizetype.U | 4 ++-- mcon/U/startperl.U | 4 ++-- mcon/U/startsh.U | 4 ++-- mcon/U/stdchar.U | 4 ++-- mcon/U/sunscanf.U | 4 ++-- mcon/U/sysman.U | 4 ++-- mcon/U/trnl.U | 4 ++-- mcon/U/uidtype.U | 4 ++-- mcon/U/usenm.U | 4 ++-- mcon/U/usesocks.U | 4 ++-- mcon/U/usrinc.U | 4 ++-- mcon/U/vaproto.U | 4 ++-- mcon/U/voidflags.U | 4 ++-- mcon/U/warnflags.U | 4 ++-- mcon/U/yacc.U | 4 ++-- 571 files changed, 1142 insertions(+), 1142 deletions(-) diff --git a/mcon/U/AAAAA.U b/mcon/U/AAAAA.U index b2f6211..890cd68 100644 --- a/mcon/U/AAAAA.U +++ b/mcon/U/AAAAA.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: AAAAA.U,v $ diff --git a/mcon/U/Alpha_mieee.U b/mcon/U/Alpha_mieee.U index 9f9a784..2f0f5a0 100644 --- a/mcon/U/Alpha_mieee.U +++ b/mcon/U/Alpha_mieee.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:Alpha_mieee: Trylink cat ccflags gccversion diff --git a/mcon/U/Assert.U b/mcon/U/Assert.U index 59b4e39..ef43d59 100644 --- a/mcon/U/Assert.U +++ b/mcon/U/Assert.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:Assert: cat diff --git a/mcon/U/Begin.U b/mcon/U/Begin.U index c05d239..d63c855 100644 --- a/mcon/U/Begin.U +++ b/mcon/U/Begin.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Begin.U,v $ diff --git a/mcon/U/Checkcc.U b/mcon/U/Checkcc.U index d1b6f02..be9409c 100644 --- a/mcon/U/Checkcc.U +++ b/mcon/U/Checkcc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 2000, Jarkko Hietaniemi diff --git a/mcon/U/Chk_MANI.U b/mcon/U/Chk_MANI.U index 121ce9d..1631136 100644 --- a/mcon/U/Chk_MANI.U +++ b/mcon/U/Chk_MANI.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Chk_MANI.U,v $ diff --git a/mcon/U/Chk_whoami.U b/mcon/U/Chk_whoami.U index a18ae1d..ec42f1a 100644 --- a/mcon/U/Chk_whoami.U +++ b/mcon/U/Chk_whoami.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Chk_whoami.U,v $ diff --git a/mcon/U/Compile.U b/mcon/U/Compile.U index a8af2e0..739efcd 100644 --- a/mcon/U/Compile.U +++ b/mcon/U/Compile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 1998 Andy Dougherty diff --git a/mcon/U/Config_h.U b/mcon/U/Config_h.U index 04336c2..5e61d09 100644 --- a/mcon/U/Config_h.U +++ b/mcon/U/Config_h.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Config_h.U,v $ diff --git a/mcon/U/Config_sh.U b/mcon/U/Config_sh.U index 3d71a2e..415fc0c 100644 --- a/mcon/U/Config_sh.U +++ b/mcon/U/Config_sh.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Config_sh.U,v $ diff --git a/mcon/U/Configdir.U b/mcon/U/Configdir.U index 1dfcf70..edc4316 100644 --- a/mcon/U/Configdir.U +++ b/mcon/U/Configdir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Configdir.U,v $ diff --git a/mcon/U/Cppsym.U b/mcon/U/Cppsym.U index ab6bf7c..ae80d94 100644 --- a/mcon/U/Cppsym.U +++ b/mcon/U/Cppsym.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Cppsym.U,v $ diff --git a/mcon/U/Cross.U b/mcon/U/Cross.U index ba461df..a54b091 100644 --- a/mcon/U/Cross.U +++ b/mcon/U/Cross.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 2001 Jarkko Hietaniemi diff --git a/mcon/U/Csym.U b/mcon/U/Csym.U index b2af441..5e293cd 100644 --- a/mcon/U/Csym.U +++ b/mcon/U/Csym.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Csym.U,v $ diff --git a/mcon/U/End.U b/mcon/U/End.U index 165b5af..68eb2a6 100644 --- a/mcon/U/End.U +++ b/mcon/U/End.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: End.U,v $ diff --git a/mcon/U/Extract.U b/mcon/U/Extract.U index 64d468b..42fb825 100644 --- a/mcon/U/Extract.U +++ b/mcon/U/Extract.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Extract.U,v $ diff --git a/mcon/U/Extractall.U b/mcon/U/Extractall.U index e764c20..641cb86 100644 --- a/mcon/U/Extractall.U +++ b/mcon/U/Extractall.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Extractall.U,v $ diff --git a/mcon/U/Filexp.U b/mcon/U/Filexp.U index 7602808..719abb3 100644 --- a/mcon/U/Filexp.U +++ b/mcon/U/Filexp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Filexp.U,v $ diff --git a/mcon/U/Findhdr.U b/mcon/U/Findhdr.U index bf70696..a3b62c9 100644 --- a/mcon/U/Findhdr.U +++ b/mcon/U/Findhdr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Thomas Neumann diff --git a/mcon/U/Finish.U b/mcon/U/Finish.U index 640c617..0cb616a 100644 --- a/mcon/U/Finish.U +++ b/mcon/U/Finish.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Finish.U,v $ diff --git a/mcon/U/GCC_pipe.U b/mcon/U/GCC_pipe.U index c7ad886..130d78c 100644 --- a/mcon/U/GCC_pipe.U +++ b/mcon/U/GCC_pipe.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:GCC_pipe: Trylink cat +cc ccflags gccversion optimize diff --git a/mcon/U/Getfile.U b/mcon/U/Getfile.U index d8dce00..356d99e 100644 --- a/mcon/U/Getfile.U +++ b/mcon/U/Getfile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Getfile.U,v $ diff --git a/mcon/U/Guess.U b/mcon/U/Guess.U index 59d0c64..d160e9d 100644 --- a/mcon/U/Guess.U +++ b/mcon/U/Guess.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Guess.U,v $ diff --git a/mcon/U/Head.U b/mcon/U/Head.U index 8258c71..489d0ae 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Head.U,v $ diff --git a/mcon/U/Inhdr.U b/mcon/U/Inhdr.U index e06282f..69cb213 100644 --- a/mcon/U/Inhdr.U +++ b/mcon/U/Inhdr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Inhdr.U,v $ diff --git a/mcon/U/Init.U b/mcon/U/Init.U index 892579d..0facc98 100644 --- a/mcon/U/Init.U +++ b/mcon/U/Init.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Init.U,v $ diff --git a/mcon/U/Inlibc.U b/mcon/U/Inlibc.U index 64fd37a..f6413b7 100644 --- a/mcon/U/Inlibc.U +++ b/mcon/U/Inlibc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Inlibc.U,v $ diff --git a/mcon/U/Instruct.U b/mcon/U/Instruct.U index 37d8afe..37768de 100644 --- a/mcon/U/Instruct.U +++ b/mcon/U/Instruct.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Instruct.U,v $ diff --git a/mcon/U/Largefile.U b/mcon/U/Largefile.U index c79d674..559175a 100644 --- a/mcon/U/Largefile.U +++ b/mcon/U/Largefile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:Largefile: Trylink cat ccflags i_unistd diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index 66052db..0f24b09 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Loc.U,v $ diff --git a/mcon/U/Loc_sed.U b/mcon/U/Loc_sed.U index f61a876..3d23bd8 100644 --- a/mcon/U/Loc_sed.U +++ b/mcon/U/Loc_sed.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?X: This is used in perl.c. diff --git a/mcon/U/Magic_h.U b/mcon/U/Magic_h.U index 8e2556c..86ae307 100644 --- a/mcon/U/Magic_h.U +++ b/mcon/U/Magic_h.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Magic_h.U,v $ diff --git a/mcon/U/MailAuthor.U b/mcon/U/MailAuthor.U index b996a68..13da1cb 100644 --- a/mcon/U/MailAuthor.U +++ b/mcon/U/MailAuthor.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Graham Stoney diff --git a/mcon/U/MailList.U b/mcon/U/MailList.U index e46060b..0edb009 100644 --- a/mcon/U/MailList.U +++ b/mcon/U/MailList.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Graham Stoney diff --git a/mcon/U/Mips.U b/mcon/U/Mips.U index 6924d19..8083fb4 100644 --- a/mcon/U/Mips.U +++ b/mcon/U/Mips.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: usrinc.U,v $ diff --git a/mcon/U/Mkdirp.U b/mcon/U/Mkdirp.U index bad6081..e093899 100644 --- a/mcon/U/Mkdirp.U +++ b/mcon/U/Mkdirp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Extract.U,v $ diff --git a/mcon/U/Mksymlinks.U b/mcon/U/Mksymlinks.U index 92318a8..2754ce1 100644 --- a/mcon/U/Mksymlinks.U +++ b/mcon/U/Mksymlinks.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 2000, Jarkko Hietaniemi diff --git a/mcon/U/Myinit.U b/mcon/U/Myinit.U index 0ab97f4..24a42bf 100644 --- a/mcon/U/Myinit.U +++ b/mcon/U/Myinit.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Myinit.U,v $ diff --git a/mcon/U/Myread.U b/mcon/U/Myread.U index 330f503..eb94ba9 100644 --- a/mcon/U/Myread.U +++ b/mcon/U/Myread.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Myread.U,v $ diff --git a/mcon/U/Nothing.U b/mcon/U/Nothing.U index fe40801..fc10999 100644 --- a/mcon/U/Nothing.U +++ b/mcon/U/Nothing.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Nothing.U,v $ diff --git a/mcon/U/Null.U b/mcon/U/Null.U index bb218b0..720069e 100644 --- a/mcon/U/Null.U +++ b/mcon/U/Null.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Null.U,v $ diff --git a/mcon/U/Obsol_h.U b/mcon/U/Obsol_h.U index 1061aa9..48522b5 100644 --- a/mcon/U/Obsol_h.U +++ b/mcon/U/Obsol_h.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Obsol_h.U,v $ diff --git a/mcon/U/Obsol_sh.U b/mcon/U/Obsol_sh.U index 0a976bf..cae6160 100644 --- a/mcon/U/Obsol_sh.U +++ b/mcon/U/Obsol_sh.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Obsol_sh.U,v $ diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index ff6f5db..64233b9 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Oldconfig.U,v $ diff --git a/mcon/U/Oldsym.U b/mcon/U/Oldsym.U index bcbf744..e792c69 100644 --- a/mcon/U/Oldsym.U +++ b/mcon/U/Oldsym.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Oldsym.U,v $ diff --git a/mcon/U/Options.U b/mcon/U/Options.U index dde2cc7..6bc2fdb 100644 --- a/mcon/U/Options.U +++ b/mcon/U/Options.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Options.U,v $ diff --git a/mcon/U/Prefixit.U b/mcon/U/Prefixit.U index dae8dba..727dc6e 100644 --- a/mcon/U/Prefixit.U +++ b/mcon/U/Prefixit.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Prefixit.U,v $ diff --git a/mcon/U/Prefixup.U b/mcon/U/Prefixup.U index 46b0b15..31901a7 100644 --- a/mcon/U/Prefixup.U +++ b/mcon/U/Prefixup.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Prefixup.U,v $ diff --git a/mcon/U/Rcs.U b/mcon/U/Rcs.U index 255fcb6..eedccbf 100644 --- a/mcon/U/Rcs.U +++ b/mcon/U/Rcs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Rcs.U,v $ diff --git a/mcon/U/Sendfile64.U b/mcon/U/Sendfile64.U index 726d855..f5e77d4 100644 --- a/mcon/U/Sendfile64.U +++ b/mcon/U/Sendfile64.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:Sendfile64: Largefile Trylink d_sendfile i_syssendfile cat diff --git a/mcon/U/Setvar.U b/mcon/U/Setvar.U index 75b640c..d1df91c 100644 --- a/mcon/U/Setvar.U +++ b/mcon/U/Setvar.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Setvar.U,v $ diff --git a/mcon/U/Signal.U b/mcon/U/Signal.U index 2990907..fa0518f 100644 --- a/mcon/U/Signal.U +++ b/mcon/U/Signal.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Signal.U,v $ diff --git a/mcon/U/Tr.U b/mcon/U/Tr.U index a7320fe..a24f04c 100644 --- a/mcon/U/Tr.U +++ b/mcon/U/Tr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Tr.U,v $ diff --git a/mcon/U/Trylink.U b/mcon/U/Trylink.U index c91494c..42504fb 100644 --- a/mcon/U/Trylink.U +++ b/mcon/U/Trylink.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?X: ?X: This unit tries to compile and link a test program. diff --git a/mcon/U/Typedef.U b/mcon/U/Typedef.U index fd16777..82ef5da 100644 --- a/mcon/U/Typedef.U +++ b/mcon/U/Typedef.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Typedef.U,v $ diff --git a/mcon/U/Unix.U b/mcon/U/Unix.U index fbd295d..8d0b9ef 100644 --- a/mcon/U/Unix.U +++ b/mcon/U/Unix.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Unix.U,v $ diff --git a/mcon/U/Warn.U b/mcon/U/Warn.U index ffab53e..d2563f0 100644 --- a/mcon/U/Warn.U +++ b/mcon/U/Warn.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Extract.U,v $ diff --git a/mcon/U/Warn_v7EXT.U b/mcon/U/Warn_v7EXT.U index d015400..0eb9c3e 100644 --- a/mcon/U/Warn_v7EXT.U +++ b/mcon/U/Warn_v7EXT.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Warn_v7EXT.U,v $ diff --git a/mcon/U/Warn_v7ND.U b/mcon/U/Warn_v7ND.U index d7ef599..8c582fe 100644 --- a/mcon/U/Warn_v7ND.U +++ b/mcon/U/Warn_v7ND.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Warn_v7ND.U,v $ diff --git a/mcon/U/Whoa.U b/mcon/U/Whoa.U index 7519fac..053fcf8 100644 --- a/mcon/U/Whoa.U +++ b/mcon/U/Whoa.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Whoa.U,v $ diff --git a/mcon/U/abortsig.U b/mcon/U/abortsig.U index 7723b7e..dbefbb1 100644 --- a/mcon/U/abortsig.U +++ b/mcon/U/abortsig.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: abortsig.U,v $ diff --git a/mcon/U/active.U b/mcon/U/active.U index 3a1a65c..464c5d0 100644 --- a/mcon/U/active.U +++ b/mcon/U/active.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: active.U,v $ diff --git a/mcon/U/afs.U b/mcon/U/afs.U index 4cf024b..1ee384d 100644 --- a/mcon/U/afs.U +++ b/mcon/U/afs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: afs.U,v $ diff --git a/mcon/U/alignbytes.U b/mcon/U/alignbytes.U index 4a5764e..2e17f01 100644 --- a/mcon/U/alignbytes.U +++ b/mcon/U/alignbytes.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: alignbytes.U,v $ diff --git a/mcon/U/archlib.U b/mcon/U/archlib.U index d0c2b29..a18a571 100644 --- a/mcon/U/archlib.U +++ b/mcon/U/archlib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/archname.U b/mcon/U/archname.U index 231e159..abb53f8 100644 --- a/mcon/U/archname.U +++ b/mcon/U/archname.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: archname.U,v $ diff --git a/mcon/U/baserev.U b/mcon/U/baserev.U index 3fc675c..d061204 100644 --- a/mcon/U/baserev.U +++ b/mcon/U/baserev.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: baserev.U,v $ diff --git a/mcon/U/basicshell.U b/mcon/U/basicshell.U index b5ccfbc..69509d5 100644 --- a/mcon/U/basicshell.U +++ b/mcon/U/basicshell.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: basicshell.U,v $ diff --git a/mcon/U/bin.U b/mcon/U/bin.U index 81c0a96..0ce4930 100644 --- a/mcon/U/bin.U +++ b/mcon/U/bin.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: bin.U,v $ diff --git a/mcon/U/bitpbyte.U b/mcon/U/bitpbyte.U index c56ac01..d71a4de 100644 --- a/mcon/U/bitpbyte.U +++ b/mcon/U/bitpbyte.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: bitpbyte.U,v $ diff --git a/mcon/U/byteorder.U b/mcon/U/byteorder.U index 930374b..8989838 100644 --- a/mcon/U/byteorder.U +++ b/mcon/U/byteorder.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:byteorder: cat contains echo n c Myread Oldconfig Loc +cc +ccflags rm _o diff --git a/mcon/U/cc.U b/mcon/U/cc.U index 15366ff..b051c6d 100644 --- a/mcon/U/cc.U +++ b/mcon/U/cc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: cc.U,v $ diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index 79c36a5..c36f4a9 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: ccflags.U,v $ diff --git a/mcon/U/cf_email.U b/mcon/U/cf_email.U index 311b050..d5d50a0 100644 --- a/mcon/U/cf_email.U +++ b/mcon/U/cf_email.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: cf_email.U,v $ diff --git a/mcon/U/cf_name.U b/mcon/U/cf_name.U index c1ea650..a7c54a1 100644 --- a/mcon/U/cf_name.U +++ b/mcon/U/cf_name.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Graham Stoney diff --git a/mcon/U/cf_who.U b/mcon/U/cf_who.U index 2643d24..801f330 100644 --- a/mcon/U/cf_who.U +++ b/mcon/U/cf_who.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: cf_who.U,v $ diff --git a/mcon/U/charorder.U b/mcon/U/charorder.U index 8ed5428..7ab5499 100644 --- a/mcon/U/charorder.U +++ b/mcon/U/charorder.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: charorder.U,v $ diff --git a/mcon/U/charsize.U b/mcon/U/charsize.U index 50afdd3..cf18988 100644 --- a/mcon/U/charsize.U +++ b/mcon/U/charsize.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: charsize.U,v $ diff --git a/mcon/U/contains.U b/mcon/U/contains.U index fcfd216..1e60263 100644 --- a/mcon/U/contains.U +++ b/mcon/U/contains.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: contains.U,v $ diff --git a/mcon/U/cpp_stuff.U b/mcon/U/cpp_stuff.U index 574b817..cc34d3a 100644 --- a/mcon/U/cpp_stuff.U +++ b/mcon/U/cpp_stuff.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: cpp_stuff.U,v $ diff --git a/mcon/U/cpp_trad.U b/mcon/U/cpp_trad.U index 7b0fa85..0bc5b44 100644 --- a/mcon/U/cpp_trad.U +++ b/mcon/U/cpp_trad.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: cpp_stuff.U,v $ diff --git a/mcon/U/cppfilecom.U b/mcon/U/cppfilecom.U index d796ce8..ac16566 100644 --- a/mcon/U/cppfilecom.U +++ b/mcon/U/cppfilecom.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Orginal Author: Graham Stoney diff --git a/mcon/U/cppstdin.U b/mcon/U/cppstdin.U index 85d556d..3b476f0 100644 --- a/mcon/U/cppstdin.U +++ b/mcon/U/cppstdin.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: cppstdin.U,v $ diff --git a/mcon/U/d_NOFILE.U b/mcon/U/d_NOFILE.U index 7685cd1..5dffaea 100644 --- a/mcon/U/d_NOFILE.U +++ b/mcon/U/d_NOFILE.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_NOFILE.U,v $ diff --git a/mcon/U/d_NeWS.U b/mcon/U/d_NeWS.U index c0e55e3..b5444ec 100644 --- a/mcon/U/d_NeWS.U +++ b/mcon/U/d_NeWS.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_NeWS.U,v $ diff --git a/mcon/U/d_PORTAR.U b/mcon/U/d_PORTAR.U index 55251c7..21e5986 100644 --- a/mcon/U/d_PORTAR.U +++ b/mcon/U/d_PORTAR.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_PORTAR.U,v $ diff --git a/mcon/U/d_SHM_MAC.U b/mcon/U/d_SHM_MAC.U index f8e87aa..69f1936 100644 --- a/mcon/U/d_SHM_MAC.U +++ b/mcon/U/d_SHM_MAC.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_SHM_MAC.U,v $ diff --git a/mcon/U/d_access.U b/mcon/U/d_access.U index 9834199..9ab6dab 100644 --- a/mcon/U/d_access.U +++ b/mcon/U/d_access.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_access.U,v $ diff --git a/mcon/U/d_alarm.U b/mcon/U/d_alarm.U index dc120dc..1057e6e 100644 --- a/mcon/U/d_alarm.U +++ b/mcon/U/d_alarm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_arc4random.U b/mcon/U/d_arc4random.U index 79cb40c..0fd3f49 100644 --- a/mcon/U/d_arc4random.U +++ b/mcon/U/d_arc4random.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_arc4random: Trylink cat i_stdlib diff --git a/mcon/U/d_attribut.U b/mcon/U/d_attribut.U index 35289cb..63a01e4 100644 --- a/mcon/U/d_attribut.U +++ b/mcon/U/d_attribut.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_backtrace.U b/mcon/U/d_backtrace.U index 9282b12..e2fd99e 100644 --- a/mcon/U/d_backtrace.U +++ b/mcon/U/d_backtrace.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_semget.U,v $ diff --git a/mcon/U/d_bcmp.U b/mcon/U/d_bcmp.U index 99f69ac..aac0a6d 100644 --- a/mcon/U/d_bcmp.U +++ b/mcon/U/d_bcmp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_bcmp.U,v $ diff --git a/mcon/U/d_bcopy.U b/mcon/U/d_bcopy.U index 60b8bea..a7c3e65 100644 --- a/mcon/U/d_bcopy.U +++ b/mcon/U/d_bcopy.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_bcopy.U,v $ diff --git a/mcon/U/d_bfd_lib.U b/mcon/U/d_bfd_lib.U index 5404dae..2ccfab0 100644 --- a/mcon/U/d_bfd_lib.U +++ b/mcon/U/d_bfd_lib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_bfd_lib: Trylink cat diff --git a/mcon/U/d_bindtxtcode.U b/mcon/U/d_bindtxtcode.U index df97b25..d2f4d4c 100644 --- a/mcon/U/d_bindtxtcode.U +++ b/mcon/U/d_bindtxtcode.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_bindtxtcode: Trylink cat diff --git a/mcon/U/d_brokstat.U b/mcon/U/d_brokstat.U index 241be29..57a1a71 100644 --- a/mcon/U/d_brokstat.U +++ b/mcon/U/d_brokstat.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_brokstat.U,v $ diff --git a/mcon/U/d_bsdjmp.U b/mcon/U/d_bsdjmp.U index 60af75e..695528f 100644 --- a/mcon/U/d_bsdjmp.U +++ b/mcon/U/d_bsdjmp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_bsdjmp.U,v $ diff --git a/mcon/U/d_built_clz.U b/mcon/U/d_built_clz.U index 8af83ce..92df13e 100644 --- a/mcon/U/d_built_clz.U +++ b/mcon/U/d_built_clz.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_built_clz: Trylink cat diff --git a/mcon/U/d_built_ctz.U b/mcon/U/d_built_ctz.U index 279d50f..9f43e50 100644 --- a/mcon/U/d_built_ctz.U +++ b/mcon/U/d_built_ctz.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_built_ctz: Trylink cat diff --git a/mcon/U/d_built_memcmp.U b/mcon/U/d_built_memcmp.U index a96a869..e0dd670 100644 --- a/mcon/U/d_built_memcmp.U +++ b/mcon/U/d_built_memcmp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_built_memcmp: Trylink cat diff --git a/mcon/U/d_built_popcount.U b/mcon/U/d_built_popcount.U index 9bba104..c91e9d2 100644 --- a/mcon/U/d_built_popcount.U +++ b/mcon/U/d_built_popcount.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_built_popcount: Trylink cat diff --git a/mcon/U/d_byacc.U b/mcon/U/d_byacc.U index aa02d79..a13001f 100644 --- a/mcon/U/d_byacc.U +++ b/mcon/U/d_byacc.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_byacc.U,v $ diff --git a/mcon/U/d_bzero.U b/mcon/U/d_bzero.U index f305de3..6b46ee7 100644 --- a/mcon/U/d_bzero.U +++ b/mcon/U/d_bzero.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_bzero.U,v $ diff --git a/mcon/U/d_casti32.U b/mcon/U/d_casti32.U index 7d24f08..471ef58 100644 --- a/mcon/U/d_casti32.U +++ b/mcon/U/d_casti32.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_castneg.U b/mcon/U/d_castneg.U index ce879df..55478da 100644 --- a/mcon/U/d_castneg.U +++ b/mcon/U/d_castneg.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_castneg.U,v $ diff --git a/mcon/U/d_cbrt.U b/mcon/U/d_cbrt.U index a97ae47..a1462c6 100644 --- a/mcon/U/d_cbrt.U +++ b/mcon/U/d_cbrt.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_cbrt.U,v $ diff --git a/mcon/U/d_charsprf.U b/mcon/U/d_charsprf.U index c7d5522..ebb09c0 100644 --- a/mcon/U/d_charsprf.U +++ b/mcon/U/d_charsprf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_charsprf.U,v $ diff --git a/mcon/U/d_chown.U b/mcon/U/d_chown.U index 00ab629..8678112 100644 --- a/mcon/U/d_chown.U +++ b/mcon/U/d_chown.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_chroot.U b/mcon/U/d_chroot.U index 64e0a90..0bcc241 100644 --- a/mcon/U/d_chroot.U +++ b/mcon/U/d_chroot.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_chsize.U b/mcon/U/d_chsize.U index 5d7ac01..4fab76f 100644 --- a/mcon/U/d_chsize.U +++ b/mcon/U/d_chsize.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_chsize.U,v $ diff --git a/mcon/U/d_ckeypad.U b/mcon/U/d_ckeypad.U index 9eacb9a..6564bb1 100644 --- a/mcon/U/d_ckeypad.U +++ b/mcon/U/d_ckeypad.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_ckeypad.U,v $ diff --git a/mcon/U/d_closedir.U b/mcon/U/d_closedir.U index de36d6d..b115cc7 100644 --- a/mcon/U/d_closedir.U +++ b/mcon/U/d_closedir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_closefrom.U b/mcon/U/d_closefrom.U index 0dc487e..5fd4942 100644 --- a/mcon/U/d_closefrom.U +++ b/mcon/U/d_closefrom.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_closefrom: Trylink cat i_unistd diff --git a/mcon/U/d_const.U b/mcon/U/d_const.U index f146b87..bd8a5ae 100644 --- a/mcon/U/d_const.U +++ b/mcon/U/d_const.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_const.U,v $ diff --git a/mcon/U/d_crypt.U b/mcon/U/d_crypt.U index 165f8ba..5a6b265 100644 --- a/mcon/U/d_crypt.U +++ b/mcon/U/d_crypt.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_crypt.U,v $ diff --git a/mcon/U/d_csh.U b/mcon/U/d_csh.U index c0a792e..6f1829e 100644 --- a/mcon/U/d_csh.U +++ b/mcon/U/d_csh.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_csh.U,v $ diff --git a/mcon/U/d_ctermid.U b/mcon/U/d_ctermid.U index 2866179..316400d 100644 --- a/mcon/U/d_ctermid.U +++ b/mcon/U/d_ctermid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_ctermid.U,v $ diff --git a/mcon/U/d_cuserid.U b/mcon/U/d_cuserid.U index 226b0aa..08ba1f7 100644 --- a/mcon/U/d_cuserid.U +++ b/mcon/U/d_cuserid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_datastart_symbol.U b/mcon/U/d_datastart_symbol.U index e612d2c..6d83a8f 100644 --- a/mcon/U/d_datastart_symbol.U +++ b/mcon/U/d_datastart_symbol.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_datastart_symbol d_weak_datastart_symbol: Trylink cat diff --git a/mcon/U/d_dbl_dig.U b/mcon/U/d_dbl_dig.U index 759aa82..c8b6fc0 100644 --- a/mcon/U/d_dbl_dig.U +++ b/mcon/U/d_dbl_dig.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_debugging.U b/mcon/U/d_debugging.U index fabe096..b411577 100644 --- a/mcon/U/d_debugging.U +++ b/mcon/U/d_debugging.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_debugging: Myread Setvar spackage cat diff --git a/mcon/U/d_deflate.U b/mcon/U/d_deflate.U index b8c9d41..604d820 100644 --- a/mcon/U/d_deflate.U +++ b/mcon/U/d_deflate.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_deflate: Trylink cat diff --git a/mcon/U/d_devpoll.U b/mcon/U/d_devpoll.U index 568d6ee..1731a3c 100644 --- a/mcon/U/d_devpoll.U +++ b/mcon/U/d_devpoll.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_dev_poll: Trylink cat diff --git a/mcon/U/d_difftime.U b/mcon/U/d_difftime.U index c558753..a059df3 100644 --- a/mcon/U/d_difftime.U +++ b/mcon/U/d_difftime.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2013 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_dirent_d_type.U b/mcon/U/d_dirent_d_type.U index 2e6b63e..e2ebb19 100644 --- a/mcon/U/d_dirent_d_type.U +++ b/mcon/U/d_dirent_d_type.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_dirent_d_type: Trylink cat i_dirent diff --git a/mcon/U/d_dladdr.U b/mcon/U/d_dladdr.U index bbd3d71..7972c33 100644 --- a/mcon/U/d_dladdr.U +++ b/mcon/U/d_dladdr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_dladdr: Trylink cat i_dlfcn diff --git a/mcon/U/d_dlerror.U b/mcon/U/d_dlerror.U index 25d6ca8..50235f8 100644 --- a/mcon/U/d_dlerror.U +++ b/mcon/U/d_dlerror.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_dliterphdr.U b/mcon/U/d_dliterphdr.U index 73b24b7..f34e2c8 100644 --- a/mcon/U/d_dliterphdr.U +++ b/mcon/U/d_dliterphdr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_dliterphdr: Trylink cat diff --git a/mcon/U/d_dlopen.U b/mcon/U/d_dlopen.U index 6ca7ffe..a932411 100644 --- a/mcon/U/d_dlopen.U +++ b/mcon/U/d_dlopen.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_dosuid.U b/mcon/U/d_dosuid.U index a584e1a..a3eb5a4 100644 --- a/mcon/U/d_dosuid.U +++ b/mcon/U/d_dosuid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Tye McQueen added safe setuid script checks. diff --git a/mcon/U/d_drem.U b/mcon/U/d_drem.U index 3056ac0..0235265 100644 --- a/mcon/U/d_drem.U +++ b/mcon/U/d_drem.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_dup2.U b/mcon/U/d_dup2.U index facc3be..0da8474 100644 --- a/mcon/U/d_dup2.U +++ b/mcon/U/d_dup2.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_dup2.U,v $ diff --git a/mcon/U/d_end_symbol.U b/mcon/U/d_end_symbol.U index 591ba0c..dcc5ac9 100644 --- a/mcon/U/d_end_symbol.U +++ b/mcon/U/d_end_symbol.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_end_symbol: Trylink cat diff --git a/mcon/U/d_eofpipe.U b/mcon/U/d_eofpipe.U index 86b30a5..50fe0e7 100644 --- a/mcon/U/d_eofpipe.U +++ b/mcon/U/d_eofpipe.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_eofpipe.U,v $ diff --git a/mcon/U/d_epoll.U b/mcon/U/d_epoll.U index e38eeb6..e039a0d 100644 --- a/mcon/U/d_epoll.U +++ b/mcon/U/d_epoll.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_epoll: Trylink cat diff --git a/mcon/U/d_etext_symbol.U b/mcon/U/d_etext_symbol.U index 1e50671..ee4a1f2 100644 --- a/mcon/U/d_etext_symbol.U +++ b/mcon/U/d_etext_symbol.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_etext_symbol: Trylink cat diff --git a/mcon/U/d_euc2jis.U b/mcon/U/d_euc2jis.U index a80406d..984f02f 100644 --- a/mcon/U/d_euc2jis.U +++ b/mcon/U/d_euc2jis.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_euc2jis.U,v $ diff --git a/mcon/U/d_fast_assert.U b/mcon/U/d_fast_assert.U index 3a1e90d..dba5132 100644 --- a/mcon/U/d_fast_assert.U +++ b/mcon/U/d_fast_assert.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_fast_assert: Myread Setvar cat gccversion spackage \ diff --git a/mcon/U/d_fchmod.U b/mcon/U/d_fchmod.U index cfb3959..dac42dc 100644 --- a/mcon/U/d_fchmod.U +++ b/mcon/U/d_fchmod.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_fchmod.U,v $ diff --git a/mcon/U/d_fchown.U b/mcon/U/d_fchown.U index aeb8db3..d6e6a9a 100644 --- a/mcon/U/d_fchown.U +++ b/mcon/U/d_fchown.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_fchown.U,v $ diff --git a/mcon/U/d_fcntl.U b/mcon/U/d_fcntl.U index 91ae9bf..ee69176 100644 --- a/mcon/U/d_fcntl.U +++ b/mcon/U/d_fcntl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_fcntl.U,v $ diff --git a/mcon/U/d_fd_set.U b/mcon/U/d_fd_set.U index 412ebd8..146a6a6 100644 --- a/mcon/U/d_fd_set.U +++ b/mcon/U/d_fd_set.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_fd_set.U,v $ diff --git a/mcon/U/d_ffs.U b/mcon/U/d_ffs.U index 160af8e..5f55a4a 100644 --- a/mcon/U/d_ffs.U +++ b/mcon/U/d_ffs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_ffs.U,v $ diff --git a/mcon/U/d_fgetpos.U b/mcon/U/d_fgetpos.U index a11b86e..b27772c 100644 --- a/mcon/U/d_fgetpos.U +++ b/mcon/U/d_fgetpos.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_fgetpos.U,v $ diff --git a/mcon/U/d_flexfnam.U b/mcon/U/d_flexfnam.U index 4292fa0..7c324b2 100644 --- a/mcon/U/d_flexfnam.U +++ b/mcon/U/d_flexfnam.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_flexfnam.U,v $ diff --git a/mcon/U/d_flock.U b/mcon/U/d_flock.U index 5dd9ccd..814928e 100644 --- a/mcon/U/d_flock.U +++ b/mcon/U/d_flock.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_flock.U,v $ diff --git a/mcon/U/d_fmod.U b/mcon/U/d_fmod.U index c4ef855..14be56b 100644 --- a/mcon/U/d_fmod.U +++ b/mcon/U/d_fmod.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_fork.U b/mcon/U/d_fork.U index d428088..f968709 100644 --- a/mcon/U/d_fork.U +++ b/mcon/U/d_fork.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_fsetpos.U b/mcon/U/d_fsetpos.U index f4d5365..9056078 100644 --- a/mcon/U/d_fsetpos.U +++ b/mcon/U/d_fsetpos.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_fsetpos.U,v $ diff --git a/mcon/U/d_ftime.U b/mcon/U/d_ftime.U index f0004a1..a19cbb3 100644 --- a/mcon/U/d_ftime.U +++ b/mcon/U/d_ftime.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_ftime.U,v $ diff --git a/mcon/U/d_ftrncate.U b/mcon/U/d_ftrncate.U index 3c7930a..5551b50 100644 --- a/mcon/U/d_ftrncate.U +++ b/mcon/U/d_ftrncate.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_ftrncate.U,v $ diff --git a/mcon/U/d_gconvert.U b/mcon/U/d_gconvert.U index 1068b03..6fc6b63 100644 --- a/mcon/U/d_gconvert.U +++ b/mcon/U/d_gconvert.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_getaddrinfo.U b/mcon/U/d_getaddrinfo.U index 5148ec0..a94bb62 100644 --- a/mcon/U/d_getaddrinfo.U +++ b/mcon/U/d_getaddrinfo.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_getaddrinfo: Trylink cat i_arpainet i_netdb i_syssock \ diff --git a/mcon/U/d_getcontext.U b/mcon/U/d_getcontext.U index f32ae6e..5edac33 100644 --- a/mcon/U/d_getcontext.U +++ b/mcon/U/d_getcontext.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_getcontext: Trylink cat diff --git a/mcon/U/d_geteuid.U b/mcon/U/d_geteuid.U index 2a25129..651ac1f 100644 --- a/mcon/U/d_geteuid.U +++ b/mcon/U/d_geteuid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_geteuid: Trylink cat i_unistd diff --git a/mcon/U/d_getgrps.U b/mcon/U/d_getgrps.U index f9036e8..c27e862 100644 --- a/mcon/U/d_getgrps.U +++ b/mcon/U/d_getgrps.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getgrps.U,v $ diff --git a/mcon/U/d_gethbynm.U b/mcon/U/d_gethbynm.U index 717102f..438b057 100644 --- a/mcon/U/d_gethbynm.U +++ b/mcon/U/d_gethbynm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_gethbynm.U,v $ diff --git a/mcon/U/d_gethent.U b/mcon/U/d_gethent.U index fd476c6..c414ea9 100644 --- a/mcon/U/d_gethent.U +++ b/mcon/U/d_gethent.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_gethent.U,v $ diff --git a/mcon/U/d_gethid.U b/mcon/U/d_gethid.U index bfac22c..9b4b6de 100644 --- a/mcon/U/d_gethid.U +++ b/mcon/U/d_gethid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_gethid.U,v $ diff --git a/mcon/U/d_gethname.U b/mcon/U/d_gethname.U index 8ce181f..cd206c1 100644 --- a/mcon/U/d_gethname.U +++ b/mcon/U/d_gethname.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_gethname.U,v $ diff --git a/mcon/U/d_getifaddrs.U b/mcon/U/d_getifaddrs.U index d78a1c4..952726f 100644 --- a/mcon/U/d_getifaddrs.U +++ b/mcon/U/d_getifaddrs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_getifaddrs: Trylink cat i_netif diff --git a/mcon/U/d_getinvent.U b/mcon/U/d_getinvent.U index e088bac..124cde8 100644 --- a/mcon/U/d_getinvent.U +++ b/mcon/U/d_getinvent.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_getinvent: Trylink cat diff --git a/mcon/U/d_getlogin.U b/mcon/U/d_getlogin.U index d4f07b9..f07553c 100644 --- a/mcon/U/d_getlogin.U +++ b/mcon/U/d_getlogin.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_getnameinfo.U b/mcon/U/d_getnameinfo.U index f0aef5c..7c18eae 100644 --- a/mcon/U/d_getnameinfo.U +++ b/mcon/U/d_getnameinfo.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2013, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_getnameinfo: Trylink cat i_arpainet i_netdb i_syssock \ diff --git a/mcon/U/d_getopt.U b/mcon/U/d_getopt.U index 24dd1f8..9e8311b 100644 --- a/mcon/U/d_getopt.U +++ b/mcon/U/d_getopt.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getopt.U,v $ diff --git a/mcon/U/d_getpagsz.U b/mcon/U/d_getpagsz.U index 364a730..f2adf02 100644 --- a/mcon/U/d_getpagsz.U +++ b/mcon/U/d_getpagsz.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getpagsz.U,v $ diff --git a/mcon/U/d_getpgid.U b/mcon/U/d_getpgid.U index a3ffdf2..8957f0e 100644 --- a/mcon/U/d_getpgid.U +++ b/mcon/U/d_getpgid.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getpgid.U,v $ diff --git a/mcon/U/d_getpgrp.U b/mcon/U/d_getpgrp.U index dc3f908..5662bdf 100644 --- a/mcon/U/d_getpgrp.U +++ b/mcon/U/d_getpgrp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getpgrp.U,v $ diff --git a/mcon/U/d_getpgrp2.U b/mcon/U/d_getpgrp2.U index 3a62c97..81abff6 100644 --- a/mcon/U/d_getpgrp2.U +++ b/mcon/U/d_getpgrp2.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getpgrp2.U,v $ diff --git a/mcon/U/d_getppid.U b/mcon/U/d_getppid.U index 3e8b95a..c37e1c0 100644 --- a/mcon/U/d_getppid.U +++ b/mcon/U/d_getppid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_getprior.U b/mcon/U/d_getprior.U index b32c255..7165918 100644 --- a/mcon/U/d_getprior.U +++ b/mcon/U/d_getprior.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getprior.U,v $ diff --git a/mcon/U/d_getpwent.U b/mcon/U/d_getpwent.U index 8a693a7..540c334 100644 --- a/mcon/U/d_getpwent.U +++ b/mcon/U/d_getpwent.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getpwent.U,v $ diff --git a/mcon/U/d_getrlimit.U b/mcon/U/d_getrlimit.U index 6874c30..965bb12 100644 --- a/mcon/U/d_getrlimit.U +++ b/mcon/U/d_getrlimit.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getrlimit.U,v $ diff --git a/mcon/U/d_gettext.U b/mcon/U/d_gettext.U index faea913..9e2d4eb 100644 --- a/mcon/U/d_gettext.U +++ b/mcon/U/d_gettext.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_gettext: Trylink cat diff --git a/mcon/U/d_getuid.U b/mcon/U/d_getuid.U index e3278b3..49071b8 100644 --- a/mcon/U/d_getuid.U +++ b/mcon/U/d_getuid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_getuid: Trylink cat i_unistd diff --git a/mcon/U/d_getwd.U b/mcon/U/d_getwd.U index e7a16e8..f250cd9 100644 --- a/mcon/U/d_getwd.U +++ b/mcon/U/d_getwd.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_getwd.U,v $ diff --git a/mcon/U/d_gnugettext.U b/mcon/U/d_gnugettext.U index 2ea44d3..8292cd7 100644 --- a/mcon/U/d_gnugettext.U +++ b/mcon/U/d_gnugettext.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_gnugettext: Myread Setvar cat d_nls +cc +ccflags +ldflags +libs diff --git a/mcon/U/d_gnulibc.U b/mcon/U/d_gnulibc.U index ead5dfa..a34b936 100644 --- a/mcon/U/d_gnulibc.U +++ b/mcon/U/d_gnulibc.U @@ -4,10 +4,10 @@ ?RCS: Copyright (c) 1996, Sven Verdoolaege ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_gnulibc gnulibc_version: Myread Oldconfig Setvar rm \ diff --git a/mcon/U/d_group.U b/mcon/U/d_group.U index af841a7..b68d102 100644 --- a/mcon/U/d_group.U +++ b/mcon/U/d_group.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_havetlib.U b/mcon/U/d_havetlib.U index b564e65..5f45ddf 100644 --- a/mcon/U/d_havetlib.U +++ b/mcon/U/d_havetlib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_havetlib.U,v $ diff --git a/mcon/U/d_herror.U b/mcon/U/d_herror.U index 1e2c943..e379850 100644 --- a/mcon/U/d_herror.U +++ b/mcon/U/d_herror.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_herror: Trylink cat diff --git a/mcon/U/d_hidnet.U b/mcon/U/d_hidnet.U index ce952f4..d4bf5ab 100644 --- a/mcon/U/d_hidnet.U +++ b/mcon/U/d_hidnet.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_hidnet.U,v $ diff --git a/mcon/U/d_hstrerror.U b/mcon/U/d_hstrerror.U index b17e970..5e6a3f2 100644 --- a/mcon/U/d_hstrerror.U +++ b/mcon/U/d_hstrerror.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_hstrerror: Trylink cat diff --git a/mcon/U/d_htonl.U b/mcon/U/d_htonl.U index 5f079c3..2a6d33b 100644 --- a/mcon/U/d_htonl.U +++ b/mcon/U/d_htonl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_htonl.U,v $ diff --git a/mcon/U/d_iconv.U b/mcon/U/d_iconv.U index c7cdf1c..377f789 100644 --- a/mcon/U/d_iconv.U +++ b/mcon/U/d_iconv.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_iconv: Trylink cat i_iconv diff --git a/mcon/U/d_ieee754.U b/mcon/U/d_ieee754.U index 2beccc6..05716bb 100644 --- a/mcon/U/d_ieee754.U +++ b/mcon/U/d_ieee754.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_ieee754 ieee754_byteorder: cat contains echo n c \ diff --git a/mcon/U/d_inetaton.U b/mcon/U/d_inetaton.U index 780abef..fbee3f0 100644 --- a/mcon/U/d_inetaton.U +++ b/mcon/U/d_inetaton.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Spider Boardman ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_inetaton.U,v $ diff --git a/mcon/U/d_inetd.U b/mcon/U/d_inetd.U index 02881ad..fc1b044 100644 --- a/mcon/U/d_inetd.U +++ b/mcon/U/d_inetd.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_inetd.U,v $ diff --git a/mcon/U/d_inflate.U b/mcon/U/d_inflate.U index 985df4a..6882765 100644 --- a/mcon/U/d_inflate.U +++ b/mcon/U/d_inflate.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_inflate: Trylink cat diff --git a/mcon/U/d_initstate.U b/mcon/U/d_initstate.U index 0172833..f1ceb40 100644 --- a/mcon/U/d_initstate.U +++ b/mcon/U/d_initstate.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_initstate: Trylink cat i_stdlib diff --git a/mcon/U/d_internet.U b/mcon/U/d_internet.U index ca2d3fc..2684991 100644 --- a/mcon/U/d_internet.U +++ b/mcon/U/d_internet.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_internet.U,v $ diff --git a/mcon/U/d_iptos.U b/mcon/U/d_iptos.U index 891e8e5..fe2a4b6 100644 --- a/mcon/U/d_iptos.U +++ b/mcon/U/d_iptos.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_iptos: cat rm contains cppstdin cppflags cppminus d_windows \ diff --git a/mcon/U/d_ipv6.U b/mcon/U/d_ipv6.U index dbdc413..18b5ccc 100644 --- a/mcon/U/d_ipv6.U +++ b/mcon/U/d_ipv6.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_ipv6: Assert Trylink cat i_arpainet i_netdb i_syssock i_niin \ diff --git a/mcon/U/d_isascii.U b/mcon/U/d_isascii.U index 7d50e03..e2ba587 100644 --- a/mcon/U/d_isascii.U +++ b/mcon/U/d_isascii.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_itimer.U b/mcon/U/d_itimer.U index 024d3a9..b470ed2 100644 --- a/mcon/U/d_itimer.U +++ b/mcon/U/d_itimer.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_itimer.U,v $ diff --git a/mcon/U/d_keepsig.U b/mcon/U/d_keepsig.U index 43a8f88..97cf93e 100644 --- a/mcon/U/d_keepsig.U +++ b/mcon/U/d_keepsig.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_keepsig.U,v $ diff --git a/mcon/U/d_kevent_udata.U b/mcon/U/d_kevent_udata.U index 922c318..1af2ecb 100644 --- a/mcon/U/d_kevent_udata.U +++ b/mcon/U/d_kevent_udata.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_kevent_int_udata: Trylink cat d_kqueue diff --git a/mcon/U/d_killpg.U b/mcon/U/d_killpg.U index b762b56..d92dc7e 100644 --- a/mcon/U/d_killpg.U +++ b/mcon/U/d_killpg.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_killpg.U,v $ diff --git a/mcon/U/d_kqueue.U b/mcon/U/d_kqueue.U index 2ffb960..c561084 100644 --- a/mcon/U/d_kqueue.U +++ b/mcon/U/d_kqueue.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_kqueue: Trylink cat diff --git a/mcon/U/d_link.U b/mcon/U/d_link.U index b3505c2..01d3271 100644 --- a/mcon/U/d_link.U +++ b/mcon/U/d_link.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_link.U,v $ diff --git a/mcon/U/d_linuxstd.U b/mcon/U/d_linuxstd.U index a18890a..74c6226 100644 --- a/mcon/U/d_linuxstd.U +++ b/mcon/U/d_linuxstd.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_locale_charset.U b/mcon/U/d_locale_charset.U index e6e3388..028fa70 100644 --- a/mcon/U/d_locale_charset.U +++ b/mcon/U/d_locale_charset.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_locale_charset: Trylink cat i_libcharset diff --git a/mcon/U/d_locconv.U b/mcon/U/d_locconv.U index 8af5901..416f487 100644 --- a/mcon/U/d_locconv.U +++ b/mcon/U/d_locconv.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_lockf.U b/mcon/U/d_lockf.U index 6118e6d..b637d51 100644 --- a/mcon/U/d_lockf.U +++ b/mcon/U/d_lockf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_lstat.U b/mcon/U/d_lstat.U index 4454372..96f739f 100644 --- a/mcon/U/d_lstat.U +++ b/mcon/U/d_lstat.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_lstat.U,v $ diff --git a/mcon/U/d_madvise.U b/mcon/U/d_madvise.U index 5f94a0f..9ef4acb 100644 --- a/mcon/U/d_madvise.U +++ b/mcon/U/d_madvise.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_madvise: Trylink cat i_sysmman diff --git a/mcon/U/d_mblen.U b/mcon/U/d_mblen.U index a4ee390..f296018 100644 --- a/mcon/U/d_mblen.U +++ b/mcon/U/d_mblen.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_mbstowcs.U b/mcon/U/d_mbstowcs.U index 473d3d0..38d639e 100644 --- a/mcon/U/d_mbstowcs.U +++ b/mcon/U/d_mbstowcs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_mbstowcs.U,v $ diff --git a/mcon/U/d_mbtowc.U b/mcon/U/d_mbtowc.U index ea0baee..6814a6a 100644 --- a/mcon/U/d_mbtowc.U +++ b/mcon/U/d_mbtowc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_mbtowc.U,v $ diff --git a/mcon/U/d_memalign.U b/mcon/U/d_memalign.U index e814653..29cb7da 100644 --- a/mcon/U/d_memalign.U +++ b/mcon/U/d_memalign.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_memalign.U,v $ diff --git a/mcon/U/d_memccpy.U b/mcon/U/d_memccpy.U index d35e7fb..a79bc3e 100644 --- a/mcon/U/d_memccpy.U +++ b/mcon/U/d_memccpy.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_memccpy.U,v $ diff --git a/mcon/U/d_memchr.U b/mcon/U/d_memchr.U index 8f6f810..86919d4 100644 --- a/mcon/U/d_memchr.U +++ b/mcon/U/d_memchr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_memchr.U,v $ diff --git a/mcon/U/d_memcmp.U b/mcon/U/d_memcmp.U index d90d254..3c6bce7 100644 --- a/mcon/U/d_memcmp.U +++ b/mcon/U/d_memcmp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_memcmp.U,v $ diff --git a/mcon/U/d_memcpy.U b/mcon/U/d_memcpy.U index 673f708..a84d37a 100644 --- a/mcon/U/d_memcpy.U +++ b/mcon/U/d_memcpy.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_memcpy.U,v $ diff --git a/mcon/U/d_memmove.U b/mcon/U/d_memmove.U index da0dddf..47dcbe5 100644 --- a/mcon/U/d_memmove.U +++ b/mcon/U/d_memmove.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_memmove.U,v $ diff --git a/mcon/U/d_mempcpy.U b/mcon/U/d_mempcpy.U index a85a649..63ccf51 100644 --- a/mcon/U/d_mempcpy.U +++ b/mcon/U/d_mempcpy.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_mempcpy: Trylink cat diff --git a/mcon/U/d_memset.U b/mcon/U/d_memset.U index ff75895..a36f354 100644 --- a/mcon/U/d_memset.U +++ b/mcon/U/d_memset.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_memset.U,v $ diff --git a/mcon/U/d_mkdir.U b/mcon/U/d_mkdir.U index 6035fb3..b614e04 100644 --- a/mcon/U/d_mkdir.U +++ b/mcon/U/d_mkdir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_mkdir.U,v $ diff --git a/mcon/U/d_mkfifo.U b/mcon/U/d_mkfifo.U index 45eae25..6fe53ba 100644 --- a/mcon/U/d_mkfifo.U +++ b/mcon/U/d_mkfifo.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_mktime.U b/mcon/U/d_mktime.U index c0fbd55..f5a0a36 100644 --- a/mcon/U/d_mktime.U +++ b/mcon/U/d_mktime.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_mmap.U b/mcon/U/d_mmap.U index 265ed78..65c2b1b 100644 --- a/mcon/U/d_mmap.U +++ b/mcon/U/d_mmap.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_mmap.U,v $ diff --git a/mcon/U/d_msem_lck.U b/mcon/U/d_msem_lck.U index 3b99f65..4009d0d 100644 --- a/mcon/U/d_msem_lck.U +++ b/mcon/U/d_msem_lck.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_msem_lck.U,v $ diff --git a/mcon/U/d_msg.U b/mcon/U/d_msg.U index 7f090da..5afeadd 100644 --- a/mcon/U/d_msg.U +++ b/mcon/U/d_msg.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_msg.U,v $ diff --git a/mcon/U/d_msg_flags.U b/mcon/U/d_msg_flags.U index be154ed..d64444c 100644 --- a/mcon/U/d_msg_flags.U +++ b/mcon/U/d_msg_flags.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_msghdr_msg_flags: Trylink cat i_systypes i_sysselct i_syssock \ diff --git a/mcon/U/d_msgctl.U b/mcon/U/d_msgctl.U index c10510e..b3b9293 100644 --- a/mcon/U/d_msgctl.U +++ b/mcon/U/d_msgctl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_msgctl.U,v $ diff --git a/mcon/U/d_msgget.U b/mcon/U/d_msgget.U index f4071ce..d6d2368 100644 --- a/mcon/U/d_msgget.U +++ b/mcon/U/d_msgget.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_msgget.U,v $ diff --git a/mcon/U/d_msgrcv.U b/mcon/U/d_msgrcv.U index a53cf23..3bfe165 100644 --- a/mcon/U/d_msgrcv.U +++ b/mcon/U/d_msgrcv.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_msgrcv.U,v $ diff --git a/mcon/U/d_msgsnd.U b/mcon/U/d_msgsnd.U index b644a28..0ab1f9d 100644 --- a/mcon/U/d_msgsnd.U +++ b/mcon/U/d_msgsnd.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_msgsnd.U,v $ diff --git a/mcon/U/d_msync.U b/mcon/U/d_msync.U index 4c0fcf1..3aa39cd 100644 --- a/mcon/U/d_msync.U +++ b/mcon/U/d_msync.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_msync.U,v $ diff --git a/mcon/U/d_munmap.U b/mcon/U/d_munmap.U index d82f240..01292b2 100644 --- a/mcon/U/d_munmap.U +++ b/mcon/U/d_munmap.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_munmap.U,v $ diff --git a/mcon/U/d_nanosleep.U b/mcon/U/d_nanosleep.U index dc7090f..d65eef6 100644 --- a/mcon/U/d_nanosleep.U +++ b/mcon/U/d_nanosleep.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_nanosleep: Trylink cat diff --git a/mcon/U/d_newsadm.U b/mcon/U/d_newsadm.U index cd13f41..1ffa721 100644 --- a/mcon/U/d_newsadm.U +++ b/mcon/U/d_newsadm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_newsadm.U,v $ diff --git a/mcon/U/d_nice.U b/mcon/U/d_nice.U index e8e8f8a..c618d5f 100644 --- a/mcon/U/d_nice.U +++ b/mcon/U/d_nice.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_nls.U b/mcon/U/d_nls.U index 5ef2c13..523b203 100644 --- a/mcon/U/d_nls.U +++ b/mcon/U/d_nls.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_nls: Myread Setvar d_gettext i_libintl diff --git a/mcon/U/d_nolnbuf.U b/mcon/U/d_nolnbuf.U index 9e63280..b69cec3 100644 --- a/mcon/U/d_nolnbuf.U +++ b/mcon/U/d_nolnbuf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_nolnbuf.U,v $ diff --git a/mcon/U/d_normsig.U b/mcon/U/d_normsig.U index ae3c7e5..0c1c4dc 100644 --- a/mcon/U/d_normsig.U +++ b/mcon/U/d_normsig.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_normsig.U,v $ diff --git a/mcon/U/d_open3.U b/mcon/U/d_open3.U index ee56f45..e59b137 100644 --- a/mcon/U/d_open3.U +++ b/mcon/U/d_open3.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_open3.U,v $ diff --git a/mcon/U/d_passwd.U b/mcon/U/d_passwd.U index 2504e6c..47c9a53 100644 --- a/mcon/U/d_passwd.U +++ b/mcon/U/d_passwd.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_pathconf.U b/mcon/U/d_pathconf.U index f9d478f..19bddeb 100644 --- a/mcon/U/d_pathconf.U +++ b/mcon/U/d_pathconf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_pause.U b/mcon/U/d_pause.U index 9dda677..f34c7b7 100644 --- a/mcon/U/d_pause.U +++ b/mcon/U/d_pause.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_perror.U b/mcon/U/d_perror.U index a7acdb9..990acb0 100644 --- a/mcon/U/d_perror.U +++ b/mcon/U/d_perror.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_perror.U,v $ diff --git a/mcon/U/d_pidcheck.U b/mcon/U/d_pidcheck.U index 6744334..a65c6f0 100644 --- a/mcon/U/d_pidcheck.U +++ b/mcon/U/d_pidcheck.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_pidcheck.U,v $ diff --git a/mcon/U/d_pipe.U b/mcon/U/d_pipe.U index 815fd8f..634bd24 100644 --- a/mcon/U/d_pipe.U +++ b/mcon/U/d_pipe.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_poll.U b/mcon/U/d_poll.U index 70b45fd..fb0e2bd 100644 --- a/mcon/U/d_poll.U +++ b/mcon/U/d_poll.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_poll.U,v $ diff --git a/mcon/U/d_popen.U b/mcon/U/d_popen.U index 5508d73..69d774c 100644 --- a/mcon/U/d_popen.U +++ b/mcon/U/d_popen.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_popen.U,v $ diff --git a/mcon/U/d_portable.U b/mcon/U/d_portable.U index 36389b4..c906329 100644 --- a/mcon/U/d_portable.U +++ b/mcon/U/d_portable.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_portable.U,v $ diff --git a/mcon/U/d_posix_fadvise.U b/mcon/U/d_posix_fadvise.U index 2cc466d..eecf982 100644 --- a/mcon/U/d_posix_fadvise.U +++ b/mcon/U/d_posix_fadvise.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_posix_fadvise: Trylink cat diff --git a/mcon/U/d_posix_memalign.U b/mcon/U/d_posix_memalign.U index 200cc1f..498cf1d 100644 --- a/mcon/U/d_posix_memalign.U +++ b/mcon/U/d_posix_memalign.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_posix_memalign: Trylink cat i_stdlib diff --git a/mcon/U/d_pread.U b/mcon/U/d_pread.U index 72edba4..7ff4305 100644 --- a/mcon/U/d_pread.U +++ b/mcon/U/d_pread.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_pread.U,v $ diff --git a/mcon/U/d_preadv.U b/mcon/U/d_preadv.U index a153b26..5abc0c5 100644 --- a/mcon/U/d_preadv.U +++ b/mcon/U/d_preadv.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_preadv.U,v $ diff --git a/mcon/U/d_psignal.U b/mcon/U/d_psignal.U index 46c7b85..f33eb9b 100644 --- a/mcon/U/d_psignal.U +++ b/mcon/U/d_psignal.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_psignal.U,v $ diff --git a/mcon/U/d_ptattr_setstack.U b/mcon/U/d_ptattr_setstack.U index 15e1c15..5517390 100644 --- a/mcon/U/d_ptattr_setstack.U +++ b/mcon/U/d_ptattr_setstack.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 2013 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_ptattr_setstack: Trylink cat diff --git a/mcon/U/d_pwrite.U b/mcon/U/d_pwrite.U index c568c06..5c4c298 100644 --- a/mcon/U/d_pwrite.U +++ b/mcon/U/d_pwrite.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_pwrite.U,v $ diff --git a/mcon/U/d_pwritev.U b/mcon/U/d_pwritev.U index 2031b8a..da97b51 100644 --- a/mcon/U/d_pwritev.U +++ b/mcon/U/d_pwritev.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_pwritev.U,v $ diff --git a/mcon/U/d_random.U b/mcon/U/d_random.U index 915b0db..8494759 100644 --- a/mcon/U/d_random.U +++ b/mcon/U/d_random.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_random: Trylink cat i_stdlib diff --git a/mcon/U/d_raster.U b/mcon/U/d_raster.U index 7159de7..36a6136 100644 --- a/mcon/U/d_raster.U +++ b/mcon/U/d_raster.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_raster.U,v $ diff --git a/mcon/U/d_rdchk.U b/mcon/U/d_rdchk.U index 66a00d3..99aa80c 100644 --- a/mcon/U/d_rdchk.U +++ b/mcon/U/d_rdchk.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_rdchk.U,v $ diff --git a/mcon/U/d_readdir.U b/mcon/U/d_readdir.U index 329e039..f1e1dee 100644 --- a/mcon/U/d_readdir.U +++ b/mcon/U/d_readdir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_readdir.U,v $ diff --git a/mcon/U/d_readlink.U b/mcon/U/d_readlink.U index bc2d4f9..7166f5e 100644 --- a/mcon/U/d_readlink.U +++ b/mcon/U/d_readlink.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_recvmsg.U b/mcon/U/d_recvmsg.U index 39e82bc..0be12d0 100644 --- a/mcon/U/d_recvmsg.U +++ b/mcon/U/d_recvmsg.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_recvmsg: Trylink cat i_systypes i_sysselct i_syssock \ diff --git a/mcon/U/d_regcmp.U b/mcon/U/d_regcmp.U index e5e7a1f..3ff0b8e 100644 --- a/mcon/U/d_regcmp.U +++ b/mcon/U/d_regcmp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_regcmp.U,v $ diff --git a/mcon/U/d_regcomp.U b/mcon/U/d_regcomp.U index 88d0b4b..30c8ef3 100644 --- a/mcon/U/d_regcomp.U +++ b/mcon/U/d_regcomp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log$ diff --git a/mcon/U/d_regparm.U b/mcon/U/d_regparm.U index 80b91bd..f1d03a5 100644 --- a/mcon/U/d_regparm.U +++ b/mcon/U/d_regparm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_regparm: Myread Setvar cat rm cc ccflags ldflags gccversion diff --git a/mcon/U/d_rename.U b/mcon/U/d_rename.U index db5d315..e99a0af 100644 --- a/mcon/U/d_rename.U +++ b/mcon/U/d_rename.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_rename.U,v $ diff --git a/mcon/U/d_rmdir.U b/mcon/U/d_rmdir.U index 31680d8..36fb822 100644 --- a/mcon/U/d_rmdir.U +++ b/mcon/U/d_rmdir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_rmdir.U,v $ diff --git a/mcon/U/d_rusage.U b/mcon/U/d_rusage.U index 0e011b6..7abea03 100644 --- a/mcon/U/d_rusage.U +++ b/mcon/U/d_rusage.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_rusage.U,v $ diff --git a/mcon/U/d_sa_interrupt.U b/mcon/U/d_sa_interrupt.U index ca1c2f4..443696c 100644 --- a/mcon/U/d_sa_interrupt.U +++ b/mcon/U/d_sa_interrupt.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_sa_interrupt: Trylink cat diff --git a/mcon/U/d_safebcpy.U b/mcon/U/d_safebcpy.U index f30aff7..2db1371 100644 --- a/mcon/U/d_safebcpy.U +++ b/mcon/U/d_safebcpy.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_safebcpy.U,v $ diff --git a/mcon/U/d_safemcpy.U b/mcon/U/d_safemcpy.U index d59475b..bf8c6e1 100644 --- a/mcon/U/d_safemcpy.U +++ b/mcon/U/d_safemcpy.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_safemcpy.U,v $ diff --git a/mcon/U/d_sanemcmp.U b/mcon/U/d_sanemcmp.U index 07d1f84..06fa207 100644 --- a/mcon/U/d_sanemcmp.U +++ b/mcon/U/d_sanemcmp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sanemcmp.U,v $ diff --git a/mcon/U/d_sbrk.U b/mcon/U/d_sbrk.U index 5128f68..849d730 100644 --- a/mcon/U/d_sbrk.U +++ b/mcon/U/d_sbrk.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sbrk.U,v $ diff --git a/mcon/U/d_scandir.U b/mcon/U/d_scandir.U index f442703..92501f2 100644 --- a/mcon/U/d_scandir.U +++ b/mcon/U/d_scandir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_scandir.U,v $ diff --git a/mcon/U/d_scannl.U b/mcon/U/d_scannl.U index 10ca68f..eaf81d1 100644 --- a/mcon/U/d_scannl.U +++ b/mcon/U/d_scannl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_scannl.U,v $ diff --git a/mcon/U/d_sched_yield.U b/mcon/U/d_sched_yield.U index 4d4aa5c..0627e3d 100644 --- a/mcon/U/d_sched_yield.U +++ b/mcon/U/d_sched_yield.U @@ -1,9 +1,9 @@ ?RCS: Copyright (c) 2012, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_sched_yield: Trylink cat diff --git a/mcon/U/d_scorfl.U b/mcon/U/d_scorfl.U index c42e1bf..baf0add 100644 --- a/mcon/U/d_scorfl.U +++ b/mcon/U/d_scorfl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_scorfl.U,v $ diff --git a/mcon/U/d_select.U b/mcon/U/d_select.U index 372379b..2606650 100644 --- a/mcon/U/d_select.U +++ b/mcon/U/d_select.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_select.U,v $ diff --git a/mcon/U/d_sem.U b/mcon/U/d_sem.U index f00a820..765df1a 100644 --- a/mcon/U/d_sem.U +++ b/mcon/U/d_sem.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sem.U,v $ diff --git a/mcon/U/d_semctl.U b/mcon/U/d_semctl.U index 93de4ca..d280dfb 100644 --- a/mcon/U/d_semctl.U +++ b/mcon/U/d_semctl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_semctl.U,v $ diff --git a/mcon/U/d_semget.U b/mcon/U/d_semget.U index 828e1be..28fa697 100644 --- a/mcon/U/d_semget.U +++ b/mcon/U/d_semget.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_semget.U,v $ diff --git a/mcon/U/d_semop.U b/mcon/U/d_semop.U index 4f690a2..092ec2a 100644 --- a/mcon/U/d_semop.U +++ b/mcon/U/d_semop.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_semop.U,v $ diff --git a/mcon/U/d_sendfile.U b/mcon/U/d_sendfile.U index 5585457..3bac728 100644 --- a/mcon/U/d_sendfile.U +++ b/mcon/U/d_sendfile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_sendfile: Trylink cat diff --git a/mcon/U/d_sendmsg.U b/mcon/U/d_sendmsg.U index 8dd9ec7..0cd2782 100644 --- a/mcon/U/d_sendmsg.U +++ b/mcon/U/d_sendmsg.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_sendmsg: Trylink cat i_systypes i_sysselct i_syssock \ diff --git a/mcon/U/d_setegid.U b/mcon/U/d_setegid.U index 80ad14a..004b32b 100644 --- a/mcon/U/d_setegid.U +++ b/mcon/U/d_setegid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setegid.U,v $ diff --git a/mcon/U/d_seteuid.U b/mcon/U/d_seteuid.U index 7f544ad..0ff6010 100644 --- a/mcon/U/d_seteuid.U +++ b/mcon/U/d_seteuid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_seteuid.U,v $ diff --git a/mcon/U/d_setgrps.U b/mcon/U/d_setgrps.U index e6c6d55..814c89e 100644 --- a/mcon/U/d_setgrps.U +++ b/mcon/U/d_setgrps.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setgrps.U,v $ diff --git a/mcon/U/d_setlnbuf.U b/mcon/U/d_setlnbuf.U index fa6298d..337e37f 100644 --- a/mcon/U/d_setlnbuf.U +++ b/mcon/U/d_setlnbuf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_setlocale.U b/mcon/U/d_setlocale.U index ebb517c..14f2ac2 100644 --- a/mcon/U/d_setlocale.U +++ b/mcon/U/d_setlocale.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_setpgid.U b/mcon/U/d_setpgid.U index 2fc1c25..e62e147 100644 --- a/mcon/U/d_setpgid.U +++ b/mcon/U/d_setpgid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setpgid.U,v $ diff --git a/mcon/U/d_setpgrp.U b/mcon/U/d_setpgrp.U index 1a207de..34f2574 100644 --- a/mcon/U/d_setpgrp.U +++ b/mcon/U/d_setpgrp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setpgrp.U,v $ diff --git a/mcon/U/d_setpgrp2.U b/mcon/U/d_setpgrp2.U index 2ed33cc..f2949f8 100644 --- a/mcon/U/d_setpgrp2.U +++ b/mcon/U/d_setpgrp2.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setpgrp2.U,v $ diff --git a/mcon/U/d_setprior.U b/mcon/U/d_setprior.U index 7f4b8de..7cda4f3 100644 --- a/mcon/U/d_setprior.U +++ b/mcon/U/d_setprior.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setprior.U,v $ diff --git a/mcon/U/d_setproctitle.U b/mcon/U/d_setproctitle.U index 6cb36b6..15a880e 100644 --- a/mcon/U/d_setproctitle.U +++ b/mcon/U/d_setproctitle.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_setproctitle: Trylink cat i_stdlib i_unistd diff --git a/mcon/U/d_setregid.U b/mcon/U/d_setregid.U index 6dc2259..84c2735 100644 --- a/mcon/U/d_setregid.U +++ b/mcon/U/d_setregid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setregid.U,v $ diff --git a/mcon/U/d_setreuid.U b/mcon/U/d_setreuid.U index 8f4ecf6..68c01ae 100644 --- a/mcon/U/d_setreuid.U +++ b/mcon/U/d_setreuid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setreuid.U,v $ diff --git a/mcon/U/d_setrgid.U b/mcon/U/d_setrgid.U index 0a1dc91..d828024 100644 --- a/mcon/U/d_setrgid.U +++ b/mcon/U/d_setrgid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setrgid.U,v $ diff --git a/mcon/U/d_setrlimit.U b/mcon/U/d_setrlimit.U index 706c4c9..e979af6 100644 --- a/mcon/U/d_setrlimit.U +++ b/mcon/U/d_setrlimit.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setrlimit.U,v $ diff --git a/mcon/U/d_setruid.U b/mcon/U/d_setruid.U index cd80fef..6450f32 100644 --- a/mcon/U/d_setruid.U +++ b/mcon/U/d_setruid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setruid.U,v $ diff --git a/mcon/U/d_setsid.U b/mcon/U/d_setsid.U index d9bd800..4e3e98f 100644 --- a/mcon/U/d_setsid.U +++ b/mcon/U/d_setsid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_setsid.U,v $ diff --git a/mcon/U/d_sgndchr.U b/mcon/U/d_sgndchr.U index 7e61380..c1c9f28 100644 --- a/mcon/U/d_sgndchr.U +++ b/mcon/U/d_sgndchr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sgndchr.U,v $ diff --git a/mcon/U/d_shm.U b/mcon/U/d_shm.U index eba4c56..537db51 100644 --- a/mcon/U/d_shm.U +++ b/mcon/U/d_shm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_shm.U,v $ diff --git a/mcon/U/d_shmat.U b/mcon/U/d_shmat.U index 4f09f7d..be8b4bd 100644 --- a/mcon/U/d_shmat.U +++ b/mcon/U/d_shmat.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_shmat.U,v $ diff --git a/mcon/U/d_shmctl.U b/mcon/U/d_shmctl.U index 7f210e2..33ec1ef 100644 --- a/mcon/U/d_shmctl.U +++ b/mcon/U/d_shmctl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_shmctl.U,v $ diff --git a/mcon/U/d_shmdt.U b/mcon/U/d_shmdt.U index 5b3b021..aea9dfc 100644 --- a/mcon/U/d_shmdt.U +++ b/mcon/U/d_shmdt.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_shmdt.U,v $ diff --git a/mcon/U/d_shmget.U b/mcon/U/d_shmget.U index 106ff35..e7e0e5a 100644 --- a/mcon/U/d_shmget.U +++ b/mcon/U/d_shmget.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_shmget.U,v $ diff --git a/mcon/U/d_sigaction.U b/mcon/U/d_sigaction.U index e8a7551..2b5205a 100644 --- a/mcon/U/d_sigaction.U +++ b/mcon/U/d_sigaction.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sigaction.U,v $ diff --git a/mcon/U/d_sigblock.U b/mcon/U/d_sigblock.U index 058b1c1..acacafc 100644 --- a/mcon/U/d_sigblock.U +++ b/mcon/U/d_sigblock.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sigblock.U,v $ diff --git a/mcon/U/d_sighold.U b/mcon/U/d_sighold.U index a2a74c5..0a5d452 100644 --- a/mcon/U/d_sighold.U +++ b/mcon/U/d_sighold.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sighold.U,v $ diff --git a/mcon/U/d_siglist.U b/mcon/U/d_siglist.U index 58125be..05dd430 100644 --- a/mcon/U/d_siglist.U +++ b/mcon/U/d_siglist.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_siglist.U,v $ diff --git a/mcon/U/d_sigprocmask.U b/mcon/U/d_sigprocmask.U index b7d279d..08febe0 100644 --- a/mcon/U/d_sigprocmask.U +++ b/mcon/U/d_sigprocmask.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sigprocmask.U,v $ diff --git a/mcon/U/d_sigsetjmp.U b/mcon/U/d_sigsetjmp.U index 82ec9ef..82a8b49 100644 --- a/mcon/U/d_sigsetjmp.U +++ b/mcon/U/d_sigsetjmp.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: You may distribute under the terms of either the GNU General Public diff --git a/mcon/U/d_sigsetmk.U b/mcon/U/d_sigsetmk.U index b924cf2..94dd348 100644 --- a/mcon/U/d_sigsetmk.U +++ b/mcon/U/d_sigsetmk.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sigsetmk.U,v $ diff --git a/mcon/U/d_sigvec.U b/mcon/U/d_sigvec.U index 8679d18..2ee4351 100644 --- a/mcon/U/d_sigvec.U +++ b/mcon/U/d_sigvec.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sigvec.U,v $ diff --git a/mcon/U/d_sjis2jis.U b/mcon/U/d_sjis2jis.U index e74eeb7..9da483f 100644 --- a/mcon/U/d_sjis2jis.U +++ b/mcon/U/d_sjis2jis.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_sjis2jis.U,v $ diff --git a/mcon/U/d_sockaddr_in_sin_len.U b/mcon/U/d_sockaddr_in_sin_len.U index 763cff7..cafb111 100644 --- a/mcon/U/d_sockaddr_in_sin_len.U +++ b/mcon/U/d_sockaddr_in_sin_len.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_sockaddr_in_sin_len: Trylink cat i_arpainet i_syssock i_winsock2 i_niin diff --git a/mcon/U/d_sockaddr_un.U b/mcon/U/d_sockaddr_un.U index 69747b2..c4d5f19 100644 --- a/mcon/U/d_sockaddr_un.U +++ b/mcon/U/d_sockaddr_un.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_sockaddr_un: Trylink cat i_arpainet i_syssock i_winsock2 i_niin i_sysun diff --git a/mcon/U/d_socker_get.U b/mcon/U/d_socker_get.U index c92d4a3..3d7ae23 100644 --- a/mcon/U/d_socker_get.U +++ b/mcon/U/d_socker_get.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_socker_get sockercflags sockerldflags: Trylink cat ccflags ldflags diff --git a/mcon/U/d_socket.U b/mcon/U/d_socket.U index c785cfb..006e635 100644 --- a/mcon/U/d_socket.U +++ b/mcon/U/d_socket.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_socket.U,v $ diff --git a/mcon/U/d_speedopt.U b/mcon/U/d_speedopt.U index 4c2043c..e22b80e 100644 --- a/mcon/U/d_speedopt.U +++ b/mcon/U/d_speedopt.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_speedopt.U,v $ diff --git a/mcon/U/d_srandom.U b/mcon/U/d_srandom.U index 74da567..d796023 100644 --- a/mcon/U/d_srandom.U +++ b/mcon/U/d_srandom.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_srandom: Trylink cat i_stdlib diff --git a/mcon/U/d_stat.U b/mcon/U/d_stat.U index 0d04d13..46103e3 100644 --- a/mcon/U/d_stat.U +++ b/mcon/U/d_stat.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_stat.U,v $ diff --git a/mcon/U/d_statblks.U b/mcon/U/d_statblks.U index 9a22166..65afd5f 100644 --- a/mcon/U/d_statblks.U +++ b/mcon/U/d_statblks.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_statblks.U,v $ diff --git a/mcon/U/d_statfs.U b/mcon/U/d_statfs.U index 5c5b229..ff3b43c 100644 --- a/mcon/U/d_statfs.U +++ b/mcon/U/d_statfs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_statfs: Trylink cat i_sysmount i_sysparam i_sysvfs diff --git a/mcon/U/d_statvfs.U b/mcon/U/d_statvfs.U index e60d83a..1b0c0e0 100644 --- a/mcon/U/d_statvfs.U +++ b/mcon/U/d_statvfs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_statvfs: Trylink cat diff --git a/mcon/U/d_stdstdio.U b/mcon/U/d_stdstdio.U index b04acbc..4ca5767 100644 --- a/mcon/U/d_stdstdio.U +++ b/mcon/U/d_stdstdio.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Tye McQueen diff --git a/mcon/U/d_strcasestr.U b/mcon/U/d_strcasestr.U index d8e7a08..ef9e6e7 100644 --- a/mcon/U/d_strcasestr.U +++ b/mcon/U/d_strcasestr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_strcasestr: Trylink cat diff --git a/mcon/U/d_strccmp.U b/mcon/U/d_strccmp.U index 1a1d719..01a1634 100644 --- a/mcon/U/d_strccmp.U +++ b/mcon/U/d_strccmp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strccmp.U,v $ diff --git a/mcon/U/d_strchr.U b/mcon/U/d_strchr.U index 1c0af5a..858e78f 100644 --- a/mcon/U/d_strchr.U +++ b/mcon/U/d_strchr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strchr.U,v $ diff --git a/mcon/U/d_strcoll.U b/mcon/U/d_strcoll.U index 9e1e354..aef05ff 100644 --- a/mcon/U/d_strcoll.U +++ b/mcon/U/d_strcoll.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_strcspn.U b/mcon/U/d_strcspn.U index 9e61e02..fd7109b 100644 --- a/mcon/U/d_strcspn.U +++ b/mcon/U/d_strcspn.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strcspn.U,v $ diff --git a/mcon/U/d_strctcpy.U b/mcon/U/d_strctcpy.U index a44597e..b7fb222 100644 --- a/mcon/U/d_strctcpy.U +++ b/mcon/U/d_strctcpy.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strctcpy.U,v $ diff --git a/mcon/U/d_strdup.U b/mcon/U/d_strdup.U index db610b9..4472c77 100644 --- a/mcon/U/d_strdup.U +++ b/mcon/U/d_strdup.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strdup.U,v $ diff --git a/mcon/U/d_strerror.U b/mcon/U/d_strerror.U index 4949630..9a38679 100644 --- a/mcon/U/d_strerror.U +++ b/mcon/U/d_strerror.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strerror.U,v $ diff --git a/mcon/U/d_strftime.U b/mcon/U/d_strftime.U index 86c3686..ba4fe37 100644 --- a/mcon/U/d_strftime.U +++ b/mcon/U/d_strftime.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strftime.U,v $ diff --git a/mcon/U/d_strlcat.U b/mcon/U/d_strlcat.U index 557a7d6..3e960ff 100644 --- a/mcon/U/d_strlcat.U +++ b/mcon/U/d_strlcat.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_strlcat: Trylink cat diff --git a/mcon/U/d_strlcpy.U b/mcon/U/d_strlcpy.U index 51070c7..85cc988 100644 --- a/mcon/U/d_strlcpy.U +++ b/mcon/U/d_strlcpy.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_strlcpy: Trylink cat diff --git a/mcon/U/d_strstr.U b/mcon/U/d_strstr.U index 6005e93..921378a 100644 --- a/mcon/U/d_strstr.U +++ b/mcon/U/d_strstr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strstr.U,v $ diff --git a/mcon/U/d_strtod.U b/mcon/U/d_strtod.U index 64a5ef2..f697f56 100644 --- a/mcon/U/d_strtod.U +++ b/mcon/U/d_strtod.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strtod.U,v $ diff --git a/mcon/U/d_strtok.U b/mcon/U/d_strtok.U index 9634338..0adac25 100644 --- a/mcon/U/d_strtok.U +++ b/mcon/U/d_strtok.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strtok.U,v $ diff --git a/mcon/U/d_strtol.U b/mcon/U/d_strtol.U index edc1153..1f22bdd 100644 --- a/mcon/U/d_strtol.U +++ b/mcon/U/d_strtol.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strtol.U,v $ diff --git a/mcon/U/d_strtoul.U b/mcon/U/d_strtoul.U index ab7b4ff..b78fc6e 100644 --- a/mcon/U/d_strtoul.U +++ b/mcon/U/d_strtoul.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_strtoul.U,v $ diff --git a/mcon/U/d_strxfrm.U b/mcon/U/d_strxfrm.U index 2c9dcc6..8a09573 100644 --- a/mcon/U/d_strxfrm.U +++ b/mcon/U/d_strxfrm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_su_chown.U b/mcon/U/d_su_chown.U index b43993c..01abb17 100644 --- a/mcon/U/d_su_chown.U +++ b/mcon/U/d_su_chown.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_su_chown.U,v $ diff --git a/mcon/U/d_symlink.U b/mcon/U/d_symlink.U index 634c556..0c59a61 100644 --- a/mcon/U/d_symlink.U +++ b/mcon/U/d_symlink.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_symlink.U,v $ diff --git a/mcon/U/d_sync_atomic.U b/mcon/U/d_sync_atomic.U index 4d55862..1a33ea1 100644 --- a/mcon/U/d_sync_atomic.U +++ b/mcon/U/d_sync_atomic.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_sync_atomic: Trylink cat diff --git a/mcon/U/d_syscall.U b/mcon/U/d_syscall.U index 36a6dc7..1fb0312 100644 --- a/mcon/U/d_syscall.U +++ b/mcon/U/d_syscall.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_syscall.U,v $ diff --git a/mcon/U/d_sysconf.U b/mcon/U/d_sysconf.U index 0d919ed..637be6c 100644 --- a/mcon/U/d_sysconf.U +++ b/mcon/U/d_sysconf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_sysctl.U b/mcon/U/d_sysctl.U index bf5fc0d..8628871 100644 --- a/mcon/U/d_sysctl.U +++ b/mcon/U/d_sysctl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_sysctl: Trylink cat diff --git a/mcon/U/d_syslog.U b/mcon/U/d_syslog.U index 04f296e..09ec53c 100644 --- a/mcon/U/d_syslog.U +++ b/mcon/U/d_syslog.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_syslog.U,v $ diff --git a/mcon/U/d_system.U b/mcon/U/d_system.U index f953e27..a44350e 100644 --- a/mcon/U/d_system.U +++ b/mcon/U/d_system.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_system.U,v $ diff --git a/mcon/U/d_table.U b/mcon/U/d_table.U index 308bd48..e01c96e 100644 --- a/mcon/U/d_table.U +++ b/mcon/U/d_table.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_table.U,v $ diff --git a/mcon/U/d_tcgtpgrp.U b/mcon/U/d_tcgtpgrp.U index 074d22b..3bf0a7e 100644 --- a/mcon/U/d_tcgtpgrp.U +++ b/mcon/U/d_tcgtpgrp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_tcstpgrp.U b/mcon/U/d_tcstpgrp.U index f6bb36d..f48c488 100644 --- a/mcon/U/d_tcstpgrp.U +++ b/mcon/U/d_tcstpgrp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_time.U b/mcon/U/d_time.U index c60353b..d09c902 100644 --- a/mcon/U/d_time.U +++ b/mcon/U/d_time.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_time.U,v $ diff --git a/mcon/U/d_times.U b/mcon/U/d_times.U index 263f1a0..3e9217c 100644 --- a/mcon/U/d_times.U +++ b/mcon/U/d_times.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_times.U,v $ diff --git a/mcon/U/d_tminsys.U b/mcon/U/d_tminsys.U index 3c81057..001bf6a 100644 --- a/mcon/U/d_tminsys.U +++ b/mcon/U/d_tminsys.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_tminsys.U,v $ diff --git a/mcon/U/d_truncate.U b/mcon/U/d_truncate.U index facbf2d..85e1292 100644 --- a/mcon/U/d_truncate.U +++ b/mcon/U/d_truncate.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_truncate.U,v $ diff --git a/mcon/U/d_ttyname.U b/mcon/U/d_ttyname.U index 578fab7..f6235d3 100644 --- a/mcon/U/d_ttyname.U +++ b/mcon/U/d_ttyname.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: Copyright (c) 2011, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_semget.U,v $ diff --git a/mcon/U/d_tzmin.U b/mcon/U/d_tzmin.U index 23f4c9d..1f2a313 100644 --- a/mcon/U/d_tzmin.U +++ b/mcon/U/d_tzmin.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_tzmin.U,v $ diff --git a/mcon/U/d_tzname.U b/mcon/U/d_tzname.U index 743c193..d47c47e 100644 --- a/mcon/U/d_tzname.U +++ b/mcon/U/d_tzname.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_tzname.U,v $ diff --git a/mcon/U/d_uctx_mctx.U b/mcon/U/d_uctx_mctx.U index 565ae2f..3e60723 100644 --- a/mcon/U/d_uctx_mctx.U +++ b/mcon/U/d_uctx_mctx.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_uctx_mctx: Trylink cat i_ucontext i_sys_ucontext diff --git a/mcon/U/d_uctx_mctx_gregs.U b/mcon/U/d_uctx_mctx_gregs.U index f1525ca..bfd07a0 100644 --- a/mcon/U/d_uctx_mctx_gregs.U +++ b/mcon/U/d_uctx_mctx_gregs.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_uctx_mctx_gregs: Trylink cat i_ucontext i_sys_ucontext diff --git a/mcon/U/d_ulimit.U b/mcon/U/d_ulimit.U index 76fa757..6cac78b 100644 --- a/mcon/U/d_ulimit.U +++ b/mcon/U/d_ulimit.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_ulimit.U,v $ diff --git a/mcon/U/d_umask.U b/mcon/U/d_umask.U index 8f58bdc..c0b1d4a 100644 --- a/mcon/U/d_umask.U +++ b/mcon/U/d_umask.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_usendir.U b/mcon/U/d_usendir.U index 21484c3..3e71b8e 100644 --- a/mcon/U/d_usendir.U +++ b/mcon/U/d_usendir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_usendir.U,v $ diff --git a/mcon/U/d_usleep.U b/mcon/U/d_usleep.U index 461a860..9cfe0a1 100644 --- a/mcon/U/d_usleep.U +++ b/mcon/U/d_usleep.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_usleep.U,v $ diff --git a/mcon/U/d_uwait.U b/mcon/U/d_uwait.U index e05eb8d..7c824be 100644 --- a/mcon/U/d_uwait.U +++ b/mcon/U/d_uwait.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_uwait.U,v $ diff --git a/mcon/U/d_vfork.U b/mcon/U/d_vfork.U index 0345198..1c35462 100644 --- a/mcon/U/d_vfork.U +++ b/mcon/U/d_vfork.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_vfork.U,v $ diff --git a/mcon/U/d_voidsig.U b/mcon/U/d_voidsig.U index d91dc51..78a5034 100644 --- a/mcon/U/d_voidsig.U +++ b/mcon/U/d_voidsig.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_voidsig.U,v $ diff --git a/mcon/U/d_volatile.U b/mcon/U/d_volatile.U index 6ef01db..7f534ae 100644 --- a/mcon/U/d_volatile.U +++ b/mcon/U/d_volatile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_volatile.U,v $ diff --git a/mcon/U/d_vprintf.U b/mcon/U/d_vprintf.U index f74422d..9bb76fc 100644 --- a/mcon/U/d_vprintf.U +++ b/mcon/U/d_vprintf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_vprintf.U,v $ diff --git a/mcon/U/d_vsnprintf.U b/mcon/U/d_vsnprintf.U index 7c7508a..56153d3 100644 --- a/mcon/U/d_vsnprintf.U +++ b/mcon/U/d_vsnprintf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:d_vsnprintf: Trylink cat diff --git a/mcon/U/d_wait3.U b/mcon/U/d_wait3.U index 3db3061..59b716d 100644 --- a/mcon/U/d_wait3.U +++ b/mcon/U/d_wait3.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_wait3.U,v $ diff --git a/mcon/U/d_wait4.U b/mcon/U/d_wait4.U index f831230..87eeaf3 100644 --- a/mcon/U/d_wait4.U +++ b/mcon/U/d_wait4.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_wait4.U,v $ diff --git a/mcon/U/d_waitpid.U b/mcon/U/d_waitpid.U index 2dac4e2..67eef64 100644 --- a/mcon/U/d_waitpid.U +++ b/mcon/U/d_waitpid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_waitpid.U,v $ diff --git a/mcon/U/d_wcstombs.U b/mcon/U/d_wcstombs.U index ddb0805..143413e 100644 --- a/mcon/U/d_wcstombs.U +++ b/mcon/U/d_wcstombs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_wcstombs.U,v $ diff --git a/mcon/U/d_wctomb.U b/mcon/U/d_wctomb.U index c5496f5..ab53248 100644 --- a/mcon/U/d_wctomb.U +++ b/mcon/U/d_wctomb.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/d_wifstat.U b/mcon/U/d_wifstat.U index c78684e..df197fc 100644 --- a/mcon/U/d_wifstat.U +++ b/mcon/U/d_wifstat.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_wifstat.U,v $ diff --git a/mcon/U/d_xdrs.U b/mcon/U/d_xdrs.U index cef7c0e..e284117 100644 --- a/mcon/U/d_xdrs.U +++ b/mcon/U/d_xdrs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_xdrs.U,v $ diff --git a/mcon/U/defeditor.U b/mcon/U/defeditor.U index 799afd3..d308d2e 100644 --- a/mcon/U/defeditor.U +++ b/mcon/U/defeditor.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: defeditor.U,v $ diff --git a/mcon/U/doublesize.U b/mcon/U/doublesize.U index 8637c1e..5785535 100644 --- a/mcon/U/doublesize.U +++ b/mcon/U/doublesize.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: doublesize.U,v $ diff --git a/mcon/U/ebcdic.U b/mcon/U/ebcdic.U index 6a05eef..43a21ef 100644 --- a/mcon/U/ebcdic.U +++ b/mcon/U/ebcdic.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 1998 Andy Dougherty diff --git a/mcon/U/enablenls.U b/mcon/U/enablenls.U index 743b04b..ca6bece 100644 --- a/mcon/U/enablenls.U +++ b/mcon/U/enablenls.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:enablenls d_enablenls: Myread Setvar cat package d_nls diff --git a/mcon/U/errnolist.U b/mcon/U/errnolist.U index d9f5a37..0b6ddd9 100644 --- a/mcon/U/errnolist.U +++ b/mcon/U/errnolist.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: errnolist.U,v $ diff --git a/mcon/U/etc.U b/mcon/U/etc.U index 4414fbd..e396deb 100644 --- a/mcon/U/etc.U +++ b/mcon/U/etc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: etc.U,v $ diff --git a/mcon/U/fieldn.U b/mcon/U/fieldn.U index 3fda06d..11216de 100644 --- a/mcon/U/fieldn.U +++ b/mcon/U/fieldn.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Findhdr.U,v $ diff --git a/mcon/U/filexp_path.U b/mcon/U/filexp_path.U index 73bf64d..0ae6ecd 100644 --- a/mcon/U/filexp_path.U +++ b/mcon/U/filexp_path.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: filexp.U,v $ diff --git a/mcon/U/floatsize.U b/mcon/U/floatsize.U index efc958a..f55434a 100644 --- a/mcon/U/floatsize.U +++ b/mcon/U/floatsize.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: floatsize.U,v $ diff --git a/mcon/U/fpostype.U b/mcon/U/fpostype.U index 8270ba9..5181b14 100644 --- a/mcon/U/fpostype.U +++ b/mcon/U/fpostype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: fpostype.U,v $ diff --git a/mcon/U/fpu.U b/mcon/U/fpu.U index 5e6cb09..61e5be0 100644 --- a/mcon/U/fpu.U +++ b/mcon/U/fpu.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: fpu.U,v $ diff --git a/mcon/U/gccvers.U b/mcon/U/gccvers.U index 7184655..18fa2ba 100644 --- a/mcon/U/gccvers.U +++ b/mcon/U/gccvers.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 2000, Jarkko Hietaniemi diff --git a/mcon/U/gidtype.U b/mcon/U/gidtype.U index 58b693e..d6e9dcc 100644 --- a/mcon/U/gidtype.U +++ b/mcon/U/gidtype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: gidtype.U,v $ diff --git a/mcon/U/groupstype.U b/mcon/U/groupstype.U index 39727f1..3771b1c 100644 --- a/mcon/U/groupstype.U +++ b/mcon/U/groupstype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/h_fcntl.U b/mcon/U/h_fcntl.U index 293ebd5..fb693e0 100644 --- a/mcon/U/h_fcntl.U +++ b/mcon/U/h_fcntl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: h_fcntl.U,v $ diff --git a/mcon/U/h_sysfile.U b/mcon/U/h_sysfile.U index c35135b..aa60d1a 100644 --- a/mcon/U/h_sysfile.U +++ b/mcon/U/h_sysfile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: h_sysfile.U,v $ diff --git a/mcon/U/i_alloca.U b/mcon/U/i_alloca.U index 5105031..200185b 100644 --- a/mcon/U/i_alloca.U +++ b/mcon/U/i_alloca.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_alloca: Trylink cat diff --git a/mcon/U/i_arpainet.U b/mcon/U/i_arpainet.U index a00ff0d..4f15f76 100644 --- a/mcon/U/i_arpainet.U +++ b/mcon/U/i_arpainet.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_arpainet.U,v $ diff --git a/mcon/U/i_db.U b/mcon/U/i_db.U index 98c52c2..a69383c 100644 --- a/mcon/U/i_db.U +++ b/mcon/U/i_db.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/i_dbm.U b/mcon/U/i_dbm.U index b116be0..a180f3b 100644 --- a/mcon/U/i_dbm.U +++ b/mcon/U/i_dbm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_dbm.U,v $ diff --git a/mcon/U/i_dirent.U b/mcon/U/i_dirent.U index 65e192e..7100ef7 100644 --- a/mcon/U/i_dirent.U +++ b/mcon/U/i_dirent.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_dirent.U,v $ diff --git a/mcon/U/i_dld.U b/mcon/U/i_dld.U index 531d914..c62a986 100644 --- a/mcon/U/i_dld.U +++ b/mcon/U/i_dld.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/i_dlfcn.U b/mcon/U/i_dlfcn.U index c0808ce..32fe73b 100644 --- a/mcon/U/i_dlfcn.U +++ b/mcon/U/i_dlfcn.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/i_execinfo.U b/mcon/U/i_execinfo.U index 7df34d5..f9b16a7 100644 --- a/mcon/U/i_execinfo.U +++ b/mcon/U/i_execinfo.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_execinfo: Inhdr diff --git a/mcon/U/i_fcntl.U b/mcon/U/i_fcntl.U index 6fe4464..72f31fa 100644 --- a/mcon/U/i_fcntl.U +++ b/mcon/U/i_fcntl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_fcntl.U,v $ diff --git a/mcon/U/i_float.U b/mcon/U/i_float.U index 1b060d3..2e4867f 100644 --- a/mcon/U/i_float.U +++ b/mcon/U/i_float.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/i_gdbm.U b/mcon/U/i_gdbm.U index 81ceeba..20cfd08 100644 --- a/mcon/U/i_gdbm.U +++ b/mcon/U/i_gdbm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_gdbm.U,v $ diff --git a/mcon/U/i_grp.U b/mcon/U/i_grp.U index 95cdb07..5512415 100644 --- a/mcon/U/i_grp.U +++ b/mcon/U/i_grp.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_grp.U,v $ diff --git a/mcon/U/i_iconv.U b/mcon/U/i_iconv.U index d18f8c0..beb2356 100644 --- a/mcon/U/i_iconv.U +++ b/mcon/U/i_iconv.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?X: diff --git a/mcon/U/i_ifaddrs.U b/mcon/U/i_ifaddrs.U index c555254..23ae0bd 100644 --- a/mcon/U/i_ifaddrs.U +++ b/mcon/U/i_ifaddrs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_ifaddrs: Inhdr diff --git a/mcon/U/i_inttypes.U b/mcon/U/i_inttypes.U index d9f0573..3969834 100644 --- a/mcon/U/i_inttypes.U +++ b/mcon/U/i_inttypes.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysun.U,v $ diff --git a/mcon/U/i_invent.U b/mcon/U/i_invent.U index 171f279..b60ab78 100644 --- a/mcon/U/i_invent.U +++ b/mcon/U/i_invent.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_invent: Inhdr diff --git a/mcon/U/i_langinfo.U b/mcon/U/i_langinfo.U index 4fb894b..abc198d 100644 --- a/mcon/U/i_langinfo.U +++ b/mcon/U/i_langinfo.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_langinfo: Inhdr diff --git a/mcon/U/i_libcharset.U b/mcon/U/i_libcharset.U index 6d369a9..01109f7 100644 --- a/mcon/U/i_libcharset.U +++ b/mcon/U/i_libcharset.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_libcharset: Inhdr diff --git a/mcon/U/i_libintl.U b/mcon/U/i_libintl.U index 4277bc2..6df2988 100644 --- a/mcon/U/i_libintl.U +++ b/mcon/U/i_libintl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_libintl: Inhdr diff --git a/mcon/U/i_limits.U b/mcon/U/i_limits.U index eb15e2d..a0276cb 100644 --- a/mcon/U/i_limits.U +++ b/mcon/U/i_limits.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_limits.U,v $ diff --git a/mcon/U/i_linux_netlink.U b/mcon/U/i_linux_netlink.U index b0ed672..28dfbf6 100644 --- a/mcon/U/i_linux_netlink.U +++ b/mcon/U/i_linux_netlink.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_linux_netlink: Inhdr diff --git a/mcon/U/i_linux_rtnetlink.U b/mcon/U/i_linux_rtnetlink.U index b7db760..8bd11b9 100644 --- a/mcon/U/i_linux_rtnetlink.U +++ b/mcon/U/i_linux_rtnetlink.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_linux_rtnetlink: Inhdr diff --git a/mcon/U/i_locale.U b/mcon/U/i_locale.U index e0eb168..b4f2bf8 100644 --- a/mcon/U/i_locale.U +++ b/mcon/U/i_locale.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_locale.U,v $ diff --git a/mcon/U/i_malloc.U b/mcon/U/i_malloc.U index ad98898..88917fe 100644 --- a/mcon/U/i_malloc.U +++ b/mcon/U/i_malloc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_malloc.U,v $ diff --git a/mcon/U/i_math.U b/mcon/U/i_math.U index b2c15af..14e85b0 100644 --- a/mcon/U/i_math.U +++ b/mcon/U/i_math.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/i_memory.U b/mcon/U/i_memory.U index ab5244d..99b5d3c 100644 --- a/mcon/U/i_memory.U +++ b/mcon/U/i_memory.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_memory.U,v $ diff --git a/mcon/U/i_mswsock.U b/mcon/U/i_mswsock.U index 69e6c13..6341def 100644 --- a/mcon/U/i_mswsock.U +++ b/mcon/U/i_mswsock.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2010 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_mswsock: Inhdr diff --git a/mcon/U/i_ndbm.U b/mcon/U/i_ndbm.U index 704cbba..d760c08 100644 --- a/mcon/U/i_ndbm.U +++ b/mcon/U/i_ndbm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_ndbm.U,v $ diff --git a/mcon/U/i_netdb.U b/mcon/U/i_netdb.U index fd29021..a4ec000 100644 --- a/mcon/U/i_netdb.U +++ b/mcon/U/i_netdb.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_netdb: Inhdr diff --git a/mcon/U/i_neterrno.U b/mcon/U/i_neterrno.U index a8de2aa..af83e24 100644 --- a/mcon/U/i_neterrno.U +++ b/mcon/U/i_neterrno.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/i_netif.U b/mcon/U/i_netif.U index 6112253..460daf1 100644 --- a/mcon/U/i_netif.U +++ b/mcon/U/i_netif.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_netif: Inhdr diff --git a/mcon/U/i_netroute.U b/mcon/U/i_netroute.U index 54390e3..8c00e5a 100644 --- a/mcon/U/i_netroute.U +++ b/mcon/U/i_netroute.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?X: diff --git a/mcon/U/i_niin.U b/mcon/U/i_niin.U index 0e90b3a..c84559d 100644 --- a/mcon/U/i_niin.U +++ b/mcon/U/i_niin.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_niin.U,v $ diff --git a/mcon/U/i_niip.U b/mcon/U/i_niip.U index 5ea06c9..b04edf1 100644 --- a/mcon/U/i_niip.U +++ b/mcon/U/i_niip.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?X: diff --git a/mcon/U/i_poll.U b/mcon/U/i_poll.U index 162f4cb..ecba33f 100644 --- a/mcon/U/i_poll.U +++ b/mcon/U/i_poll.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_poll: Inhdr diff --git a/mcon/U/i_pthread.U b/mcon/U/i_pthread.U index 1e2305d..6cd0779 100644 --- a/mcon/U/i_pthread.U +++ b/mcon/U/i_pthread.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_pthread: Inhdr diff --git a/mcon/U/i_pwd.U b/mcon/U/i_pwd.U index 09f4219..31b9483 100644 --- a/mcon/U/i_pwd.U +++ b/mcon/U/i_pwd.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_pwd.U,v $ diff --git a/mcon/U/i_regex.U b/mcon/U/i_regex.U index 2599bbc..ab33025 100644 --- a/mcon/U/i_regex.U +++ b/mcon/U/i_regex.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Sidney C. Smith diff --git a/mcon/U/i_sched.U b/mcon/U/i_sched.U index ea3cccc..84e58d5 100644 --- a/mcon/U/i_sched.U +++ b/mcon/U/i_sched.U @@ -1,9 +1,9 @@ ?RCS: Copyright (c) 2012, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_sched: Inhdr diff --git a/mcon/U/i_sfio.U b/mcon/U/i_sfio.U index 0dde99f..b6e917e 100644 --- a/mcon/U/i_sfio.U +++ b/mcon/U/i_sfio.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sfio.U,v $ diff --git a/mcon/U/i_stddef.U b/mcon/U/i_stddef.U index 5d34a99..8244f4e 100644 --- a/mcon/U/i_stddef.U +++ b/mcon/U/i_stddef.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_stddef.U,v $ diff --git a/mcon/U/i_stdlib.U b/mcon/U/i_stdlib.U index d570918..f203c33 100644 --- a/mcon/U/i_stdlib.U +++ b/mcon/U/i_stdlib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_stdlib.U,v $ diff --git a/mcon/U/i_string.U b/mcon/U/i_string.U index 6656bbe..6db514c 100644 --- a/mcon/U/i_string.U +++ b/mcon/U/i_string.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_string.U,v $ diff --git a/mcon/U/i_sysdir.U b/mcon/U/i_sysdir.U index 1fa9092..9b57de6 100644 --- a/mcon/U/i_sysdir.U +++ b/mcon/U/i_sysdir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysdir.U,v $ diff --git a/mcon/U/i_sysfile.U b/mcon/U/i_sysfile.U index b8d8b9a..488c3b6 100644 --- a/mcon/U/i_sysfile.U +++ b/mcon/U/i_sysfile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysfile.U,v $ diff --git a/mcon/U/i_sysioctl.U b/mcon/U/i_sysioctl.U index 0845fd4..a299596 100644 --- a/mcon/U/i_sysioctl.U +++ b/mcon/U/i_sysioctl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysioctl.U,v $ diff --git a/mcon/U/i_sysipc.U b/mcon/U/i_sysipc.U index 8153f80..5c86815 100644 --- a/mcon/U/i_sysipc.U +++ b/mcon/U/i_sysipc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_sysipc: Inhdr diff --git a/mcon/U/i_sysmman.U b/mcon/U/i_sysmman.U index 8e88249..894fd12 100644 --- a/mcon/U/i_sysmman.U +++ b/mcon/U/i_sysmman.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysmman.U,v $ diff --git a/mcon/U/i_sysmount.U b/mcon/U/i_sysmount.U index 33c7532..5bb10c8 100644 --- a/mcon/U/i_sysmount.U +++ b/mcon/U/i_sysmount.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_sysmount: Inhdr diff --git a/mcon/U/i_sysndir.U b/mcon/U/i_sysndir.U index 8c24648..86263ff 100644 --- a/mcon/U/i_sysndir.U +++ b/mcon/U/i_sysndir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysndir.U,v $ diff --git a/mcon/U/i_sysparam.U b/mcon/U/i_sysparam.U index ffa6f39..7fca38f 100644 --- a/mcon/U/i_sysparam.U +++ b/mcon/U/i_sysparam.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysparam.U,v $ diff --git a/mcon/U/i_syspoll.U b/mcon/U/i_syspoll.U index c284143..535b0d3 100644 --- a/mcon/U/i_syspoll.U +++ b/mcon/U/i_syspoll.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_syspoll: Inhdr diff --git a/mcon/U/i_sysresrc.U b/mcon/U/i_sysresrc.U index 8d6f59b..9b9942e 100644 --- a/mcon/U/i_sysresrc.U +++ b/mcon/U/i_sysresrc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysresrc.U,v $ diff --git a/mcon/U/i_sysselct.U b/mcon/U/i_sysselct.U index 9f24002..5be988b 100644 --- a/mcon/U/i_sysselct.U +++ b/mcon/U/i_sysselct.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysselct.U,v $ diff --git a/mcon/U/i_syssem.U b/mcon/U/i_syssem.U index b4218c7..3e5d68a 100644 --- a/mcon/U/i_syssem.U +++ b/mcon/U/i_syssem.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_syssem: Inhdr diff --git a/mcon/U/i_syssendfile.U b/mcon/U/i_syssendfile.U index 16761f6..24a926e 100644 --- a/mcon/U/i_syssendfile.U +++ b/mcon/U/i_syssendfile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_syssendfile: Inhdr diff --git a/mcon/U/i_syssock.U b/mcon/U/i_syssock.U index 5788eca..7367f9d 100644 --- a/mcon/U/i_syssock.U +++ b/mcon/U/i_syssock.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_syssock.U,v $ diff --git a/mcon/U/i_sysstat.U b/mcon/U/i_sysstat.U index c010999..d800eba 100644 --- a/mcon/U/i_sysstat.U +++ b/mcon/U/i_sysstat.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysstat.U,v $ diff --git a/mcon/U/i_sysstatvfs.U b/mcon/U/i_sysstatvfs.U index 86dd015..e1d0859 100644 --- a/mcon/U/i_sysstatvfs.U +++ b/mcon/U/i_sysstatvfs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_sysstatvfs: Inhdr diff --git a/mcon/U/i_syssysctl.U b/mcon/U/i_syssysctl.U index 12d4167..a732d2a 100644 --- a/mcon/U/i_syssysctl.U +++ b/mcon/U/i_syssysctl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_syssysctl: Inhdr diff --git a/mcon/U/i_systable.U b/mcon/U/i_systable.U index 7e94d4a..1d63464 100644 --- a/mcon/U/i_systable.U +++ b/mcon/U/i_systable.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_systable.U,v $ diff --git a/mcon/U/i_systimeb.U b/mcon/U/i_systimeb.U index 29a89c8..10f66c2 100644 --- a/mcon/U/i_systimeb.U +++ b/mcon/U/i_systimeb.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_systimeb.U,v $ diff --git a/mcon/U/i_systimes.U b/mcon/U/i_systimes.U index 41066e2..bf9f295 100644 --- a/mcon/U/i_systimes.U +++ b/mcon/U/i_systimes.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_systimes.U,v $ diff --git a/mcon/U/i_systwgcf.U b/mcon/U/i_systwgcf.U index eac12fb..2c4ba63 100644 --- a/mcon/U/i_systwgcf.U +++ b/mcon/U/i_systwgcf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_systwgcf.U,v $ diff --git a/mcon/U/i_systypes.U b/mcon/U/i_systypes.U index c94e654..95bfe79 100644 --- a/mcon/U/i_systypes.U +++ b/mcon/U/i_systypes.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_systypes.U,v $ diff --git a/mcon/U/i_sysun.U b/mcon/U/i_sysun.U index 2da3b11..f8002a9 100644 --- a/mcon/U/i_sysun.U +++ b/mcon/U/i_sysun.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_sysun.U,v $ diff --git a/mcon/U/i_sysutsname.U b/mcon/U/i_sysutsname.U index f743ba5..96024be 100644 --- a/mcon/U/i_sysutsname.U +++ b/mcon/U/i_sysutsname.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_sysutsname: Inhdr diff --git a/mcon/U/i_sysvfs.U b/mcon/U/i_sysvfs.U index db7ab95..c623528 100644 --- a/mcon/U/i_sysvfs.U +++ b/mcon/U/i_sysvfs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_sysvfs: Inhdr diff --git a/mcon/U/i_syswait.U b/mcon/U/i_syswait.U index 9830fac..75ff181 100644 --- a/mcon/U/i_syswait.U +++ b/mcon/U/i_syswait.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_syswait.U,v $ diff --git a/mcon/U/i_termio.U b/mcon/U/i_termio.U index 6a87619..3bccf5a 100644 --- a/mcon/U/i_termio.U +++ b/mcon/U/i_termio.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_termio.U,v $ diff --git a/mcon/U/i_time.U b/mcon/U/i_time.U index c573fa4..8210417 100644 --- a/mcon/U/i_time.U +++ b/mcon/U/i_time.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_time.U,v $ diff --git a/mcon/U/i_ucontext.U b/mcon/U/i_ucontext.U index a819d9e..c6aa65b 100644 --- a/mcon/U/i_ucontext.U +++ b/mcon/U/i_ucontext.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_ucontext i_sys_ucontext: Inhdr cat echo n c rm \ diff --git a/mcon/U/i_unistd.U b/mcon/U/i_unistd.U index 3e199ab..bee1c4f 100644 --- a/mcon/U/i_unistd.U +++ b/mcon/U/i_unistd.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_unistd.U,v $ diff --git a/mcon/U/i_utime.U b/mcon/U/i_utime.U index 23601e7..89364c8 100644 --- a/mcon/U/i_utime.U +++ b/mcon/U/i_utime.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_utime.U,v $ diff --git a/mcon/U/i_values.U b/mcon/U/i_values.U index 6ff6d2b..3a38578 100644 --- a/mcon/U/i_values.U +++ b/mcon/U/i_values.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_values.U,v $ diff --git a/mcon/U/i_varhdr.U b/mcon/U/i_varhdr.U index e0fd6d1..d98a2ee 100644 --- a/mcon/U/i_varhdr.U +++ b/mcon/U/i_varhdr.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_varhdr.U,v $ diff --git a/mcon/U/i_vfork.U b/mcon/U/i_vfork.U index 4a628fd..041ca82 100644 --- a/mcon/U/i_vfork.U +++ b/mcon/U/i_vfork.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_vfork.U,v $ diff --git a/mcon/U/i_whoami.U b/mcon/U/i_whoami.U index e30fd19..1e96007 100644 --- a/mcon/U/i_whoami.U +++ b/mcon/U/i_whoami.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: i_whoami.U,v $ diff --git a/mcon/U/i_winsock2.U b/mcon/U/i_winsock2.U index 6071b73..e2b62a9 100644 --- a/mcon/U/i_winsock2.U +++ b/mcon/U/i_winsock2.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_winsock2: Inhdr diff --git a/mcon/U/i_ws2tcpip.U b/mcon/U/i_ws2tcpip.U index e09cd6e..13b0f8e 100644 --- a/mcon/U/i_ws2tcpip.U +++ b/mcon/U/i_ws2tcpip.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2010, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:i_ws2tcpip: Inhdr diff --git a/mcon/U/i_zlib.U b/mcon/U/i_zlib.U index 0110d6a..bb4577a 100644 --- a/mcon/U/i_zlib.U +++ b/mcon/U/i_zlib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?X: diff --git a/mcon/U/ilp.U b/mcon/U/ilp.U index 4a4195c..52a48a8 100644 --- a/mcon/U/ilp.U +++ b/mcon/U/ilp.U @@ -1,10 +1,10 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:ilp d_ilp32 d_ilp64 d_lp64 d_can64: Assert Myread Setvar \ diff --git a/mcon/U/inc.U b/mcon/U/inc.U index d91057e..3e41432 100644 --- a/mcon/U/inc.U +++ b/mcon/U/inc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: inc.U,v $ diff --git a/mcon/U/install.U b/mcon/U/install.U index 81d43fb..c72f837 100644 --- a/mcon/U/install.U +++ b/mcon/U/install.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: install.U,v $ diff --git a/mcon/U/intsize.U b/mcon/U/intsize.U index 5dcf6d3..b36f9b7 100644 --- a/mcon/U/intsize.U +++ b/mcon/U/intsize.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:intsize longsize shortsize: Assert Myread cat rm +cc +ccflags echo n c diff --git a/mcon/U/ipc.U b/mcon/U/ipc.U index 3593441..d4f3989 100644 --- a/mcon/U/ipc.U +++ b/mcon/U/ipc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: ipc.U,v $ diff --git a/mcon/U/issymlink.U b/mcon/U/issymlink.U index 3655450..460564e 100644 --- a/mcon/U/issymlink.U +++ b/mcon/U/issymlink.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/kernel.U b/mcon/U/kernel.U index f8e5ba6..d024025 100644 --- a/mcon/U/kernel.U +++ b/mcon/U/kernel.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: kernel.U,v $ diff --git a/mcon/U/lex.U b/mcon/U/lex.U index 46d5b9d..28ee113 100644 --- a/mcon/U/lex.U +++ b/mcon/U/lex.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Graham Stoney diff --git a/mcon/U/lib.U b/mcon/U/lib.U index ab6257e..d9b53f9 100644 --- a/mcon/U/lib.U +++ b/mcon/U/lib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: lib.U,v $ diff --git a/mcon/U/libc.U b/mcon/U/libc.U index b4ec983..1856628 100644 --- a/mcon/U/libc.U +++ b/mcon/U/libc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: libc.U,v $ diff --git a/mcon/U/libdbm.U b/mcon/U/libdbm.U index 07568e5..491dd68 100644 --- a/mcon/U/libdbm.U +++ b/mcon/U/libdbm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: libdbm.U,v $ diff --git a/mcon/U/libflex.U b/mcon/U/libflex.U index cf2c844..8451085 100644 --- a/mcon/U/libflex.U +++ b/mcon/U/libflex.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: libflex.U,v $ diff --git a/mcon/U/libnlist.U b/mcon/U/libnlist.U index 5e1e7f4..87eb7bd 100644 --- a/mcon/U/libnlist.U +++ b/mcon/U/libnlist.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: libnlist.U,v $ diff --git a/mcon/U/libnm.U b/mcon/U/libnm.U index ac5d73b..879bba4 100644 --- a/mcon/U/libnm.U +++ b/mcon/U/libnm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: libnm.U,v $ diff --git a/mcon/U/libpth.U b/mcon/U/libpth.U index 4024cb7..b6b3f2e 100644 --- a/mcon/U/libpth.U +++ b/mcon/U/libpth.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: libpth.U,v $ diff --git a/mcon/U/libs.U b/mcon/U/libs.U index 9217d49..3671794 100644 --- a/mcon/U/libs.U +++ b/mcon/U/libs.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: libs.U,v $ diff --git a/mcon/U/libyacc.U b/mcon/U/libyacc.U index a5b0881..ec4b8fc 100644 --- a/mcon/U/libyacc.U +++ b/mcon/U/libyacc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: libyacc.U,v $ diff --git a/mcon/U/lintlib.U b/mcon/U/lintlib.U index 09107a1..74f9ac3 100644 --- a/mcon/U/lintlib.U +++ b/mcon/U/lintlib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: lintlib.U,v $ diff --git a/mcon/U/lns.U b/mcon/U/lns.U index 453716d..d3fcd4f 100644 --- a/mcon/U/lns.U +++ b/mcon/U/lns.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/locale.U b/mcon/U/locale.U index 9f55f45..659c827 100644 --- a/mcon/U/locale.U +++ b/mcon/U/locale.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:locale localeexp: Getfile Loc Oldconfig Prefixit Prefixup \ diff --git a/mcon/U/locdist.U b/mcon/U/locdist.U index 0975e6a..524a4ad 100644 --- a/mcon/U/locdist.U +++ b/mcon/U/locdist.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: locdist.U,v $ diff --git a/mcon/U/longsize.U b/mcon/U/longsize.U index 1fe9df5..6f5b0c2 100644 --- a/mcon/U/longsize.U +++ b/mcon/U/longsize.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: longsize.U,v $ diff --git a/mcon/U/lseektype.U b/mcon/U/lseektype.U index 861395e..2ce16d3 100644 --- a/mcon/U/lseektype.U +++ b/mcon/U/lseektype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: lseektype.U,v $ diff --git a/mcon/U/maildir.U b/mcon/U/maildir.U index 4c6499e..efa4fb6 100644 --- a/mcon/U/maildir.U +++ b/mcon/U/maildir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: maildir.U,v $ diff --git a/mcon/U/mailer.U b/mcon/U/mailer.U index 1840ee7..9efcaf6 100644 --- a/mcon/U/mailer.U +++ b/mcon/U/mailer.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: mailer.U,v $ diff --git a/mcon/U/mailfile.U b/mcon/U/mailfile.U index ebe1535..14c4b14 100644 --- a/mcon/U/mailfile.U +++ b/mcon/U/mailfile.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: mailfile.U,v $ diff --git a/mcon/U/make.U b/mcon/U/make.U index 540ea46..49c0641 100644 --- a/mcon/U/make.U +++ b/mcon/U/make.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: make.U,v $ diff --git a/mcon/U/mallocsrc.U b/mcon/U/mallocsrc.U index a71fa59..a1fec47 100644 --- a/mcon/U/mallocsrc.U +++ b/mcon/U/mallocsrc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: mallocsrc.U,v $ diff --git a/mcon/U/man1dir.U b/mcon/U/man1dir.U index 23b2765..a9d9e8b 100644 --- a/mcon/U/man1dir.U +++ b/mcon/U/man1dir.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: man1dir.U,v $ diff --git a/mcon/U/man3dir.U b/mcon/U/man3dir.U index 5017f2b..2acafa2 100644 --- a/mcon/U/man3dir.U +++ b/mcon/U/man3dir.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: man3dir.U,v $ diff --git a/mcon/U/manfmt.U b/mcon/U/manfmt.U index d8f4d9a..e4ac58f 100644 --- a/mcon/U/manfmt.U +++ b/mcon/U/manfmt.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: manfmt.U,v $ diff --git a/mcon/U/mansrc.U b/mcon/U/mansrc.U index c5830da..398a8dd 100644 --- a/mcon/U/mansrc.U +++ b/mcon/U/mansrc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: mansrc.U,v $ diff --git a/mcon/U/mboxchar.U b/mcon/U/mboxchar.U index ed33695..3176523 100644 --- a/mcon/U/mboxchar.U +++ b/mcon/U/mboxchar.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: mboxchar.U,v $ diff --git a/mcon/U/mkdep.U b/mcon/U/mkdep.U index 80a9f56..36e8f5b 100644 --- a/mcon/U/mkdep.U +++ b/mcon/U/mkdep.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: mkdep.U,v $ diff --git a/mcon/U/models.U b/mcon/U/models.U index 52cdd14..4946c7e 100644 --- a/mcon/U/models.U +++ b/mcon/U/models.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: models.U,v $ diff --git a/mcon/U/modetype.U b/mcon/U/modetype.U index efdebf2..438652b 100644 --- a/mcon/U/modetype.U +++ b/mcon/U/modetype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/msgmerge_update.U b/mcon/U/msgmerge_update.U index 6b20dde..9d7c293 100644 --- a/mcon/U/msgmerge_update.U +++ b/mcon/U/msgmerge_update.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:msgmerge_update: msgmerge grep contains rm diff --git a/mcon/U/myhostname.U b/mcon/U/myhostname.U index 3e33f70..031af53 100644 --- a/mcon/U/myhostname.U +++ b/mcon/U/myhostname.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: myhostname.U,v $ diff --git a/mcon/U/n.U b/mcon/U/n.U index 67418f7..00e7f9f 100644 --- a/mcon/U/n.U +++ b/mcon/U/n.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: n.U,v $ diff --git a/mcon/U/nametype.U b/mcon/U/nametype.U index 49bc8a2..3533ba8 100644 --- a/mcon/U/nametype.U +++ b/mcon/U/nametype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: nametype.U,v $ diff --git a/mcon/U/nblock_io.U b/mcon/U/nblock_io.U index fef20ac..27637f5 100644 --- a/mcon/U/nblock_io.U +++ b/mcon/U/nblock_io.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: nblock_io.U,v $ diff --git a/mcon/U/newslevel.U b/mcon/U/newslevel.U index 763995e..8c948f0 100644 --- a/mcon/U/newslevel.U +++ b/mcon/U/newslevel.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: newslevel.U,v $ diff --git a/mcon/U/newslib.U b/mcon/U/newslib.U index 1c7ee7e..1b32716 100644 --- a/mcon/U/newslib.U +++ b/mcon/U/newslib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: newslib.U,v $ diff --git a/mcon/U/newsspool.U b/mcon/U/newsspool.U index 8e17b97..a180390 100644 --- a/mcon/U/newsspool.U +++ b/mcon/U/newsspool.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: newsspool.U,v $ diff --git a/mcon/U/nis.U b/mcon/U/nis.U index f33eb0d..762510f 100644 --- a/mcon/U/nis.U +++ b/mcon/U/nis.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: nis.U,v $ diff --git a/mcon/U/nlist_pfx.U b/mcon/U/nlist_pfx.U index e2d50b9..7e9232d 100644 --- a/mcon/U/nlist_pfx.U +++ b/mcon/U/nlist_pfx.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: nlist_pfx.U,v $ diff --git a/mcon/U/official.U b/mcon/U/official.U index e346537..cf372d1 100644 --- a/mcon/U/official.U +++ b/mcon/U/official.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 2006, Christian Biere ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:official d_official: Myread Setvar Warn diff --git a/mcon/U/orderlib.U b/mcon/U/orderlib.U index 1c0feb7..b04f55e 100644 --- a/mcon/U/orderlib.U +++ b/mcon/U/orderlib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: orderlib.U,v $ diff --git a/mcon/U/orgname.U b/mcon/U/orgname.U index b00e895..1ee1145 100644 --- a/mcon/U/orgname.U +++ b/mcon/U/orgname.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: orgname.U,v $ diff --git a/mcon/U/packadmin.U b/mcon/U/packadmin.U index dfffa3e..4e3f684 100644 --- a/mcon/U/packadmin.U +++ b/mcon/U/packadmin.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:packadmin: cf_email Oldconfig Myread cat spackage package diff --git a/mcon/U/package.U b/mcon/U/package.U index 32a4398..fcb08cf 100644 --- a/mcon/U/package.U +++ b/mcon/U/package.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: package.U,v $ diff --git a/mcon/U/pager.U b/mcon/U/pager.U index 514259e..612d111 100644 --- a/mcon/U/pager.U +++ b/mcon/U/pager.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: pager.U,v $ diff --git a/mcon/U/patchlevel.U b/mcon/U/patchlevel.U index e7a9acb..b44e96f 100644 --- a/mcon/U/patchlevel.U +++ b/mcon/U/patchlevel.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: patchlevel.U,v $ diff --git a/mcon/U/perlpath.U b/mcon/U/perlpath.U index 619807c..0bfaad7 100644 --- a/mcon/U/perlpath.U +++ b/mcon/U/perlpath.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: perlpath.U,v $ diff --git a/mcon/U/pidtype.U b/mcon/U/pidtype.U index e16bfa9..2674675 100644 --- a/mcon/U/pidtype.U +++ b/mcon/U/pidtype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: pidtype.U,v $ diff --git a/mcon/U/pkgsrc.U b/mcon/U/pkgsrc.U index 6a61e80..e434a90 100644 --- a/mcon/U/pkgsrc.U +++ b/mcon/U/pkgsrc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:pkgsrc: src rsrc diff --git a/mcon/U/prefix.U b/mcon/U/prefix.U index b773ed0..a7db029 100644 --- a/mcon/U/prefix.U +++ b/mcon/U/prefix.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/prefshell.U b/mcon/U/prefshell.U index eb02c61..7e48c81 100644 --- a/mcon/U/prefshell.U +++ b/mcon/U/prefshell.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: prefshell.U,v $ diff --git a/mcon/U/privlib.U b/mcon/U/privlib.U index 256550c..c63b067 100644 --- a/mcon/U/privlib.U +++ b/mcon/U/privlib.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: privlib.U,v $ diff --git a/mcon/U/prototype.U b/mcon/U/prototype.U index db698b8..a6d3ca6 100644 --- a/mcon/U/prototype.U +++ b/mcon/U/prototype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: prototype.U,v $ diff --git a/mcon/U/ptrsize.U b/mcon/U/ptrsize.U index 88bcd15..f276047 100644 --- a/mcon/U/ptrsize.U +++ b/mcon/U/ptrsize.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?MAKE:ptrsize: Assert Myread cat rm +cc +ccflags echo n c diff --git a/mcon/U/randbits.U b/mcon/U/randbits.U index 16d720d..f64f041 100644 --- a/mcon/U/randbits.U +++ b/mcon/U/randbits.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: randbits.U,v $ diff --git a/mcon/U/randfunc.U b/mcon/U/randfunc.U index af3ba62..53fa809 100644 --- a/mcon/U/randfunc.U +++ b/mcon/U/randfunc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: randfunc.U,v $ diff --git a/mcon/U/rcs_branch.U b/mcon/U/rcs_branch.U index b53c1af..08f792f 100644 --- a/mcon/U/rcs_branch.U +++ b/mcon/U/rcs_branch.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: rcs_branch.U,v $ diff --git a/mcon/U/registers.U b/mcon/U/registers.U index 344ceed..7152a7a 100644 --- a/mcon/U/registers.U +++ b/mcon/U/registers.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: registers.U,v $ diff --git a/mcon/U/rootid.U b/mcon/U/rootid.U index 4e15e9d..154d13e 100644 --- a/mcon/U/rootid.U +++ b/mcon/U/rootid.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: rootid.U,v $ diff --git a/mcon/U/sbrksmart.U b/mcon/U/sbrksmart.U index 1dc6682..14e6cc0 100644 --- a/mcon/U/sbrksmart.U +++ b/mcon/U/sbrksmart.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sbrksmart.U,v $ diff --git a/mcon/U/sbrktype.U b/mcon/U/sbrktype.U index a32f1ca..c0c8c9e 100644 --- a/mcon/U/sbrktype.U +++ b/mcon/U/sbrktype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sbrktype.U,v $ diff --git a/mcon/U/scriptdir.U b/mcon/U/scriptdir.U index fc1c857..633612a 100644 --- a/mcon/U/scriptdir.U +++ b/mcon/U/scriptdir.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: scriptdir.U,v $ diff --git a/mcon/U/selecttype.U b/mcon/U/selecttype.U index 9402dad..3955e78 100644 --- a/mcon/U/selecttype.U +++ b/mcon/U/selecttype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/sh.U b/mcon/U/sh.U index 4fb3146..2dc966d 100644 --- a/mcon/U/sh.U +++ b/mcon/U/sh.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1997, Chip Salzenberg ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sh.U,v $ diff --git a/mcon/U/shm_for.U b/mcon/U/shm_for.U index 922f742..3683bbf 100644 --- a/mcon/U/shm_for.U +++ b/mcon/U/shm_for.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: shm_for.U,v $ diff --git a/mcon/U/sig_name.U b/mcon/U/sig_name.U index b18e30b..dcefdc7 100644 --- a/mcon/U/sig_name.U +++ b/mcon/U/sig_name.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sig_name.U,v $ diff --git a/mcon/U/sitearch.U b/mcon/U/sitearch.U index f224cfc..4ccf40d 100644 --- a/mcon/U/sitearch.U +++ b/mcon/U/sitearch.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sitearch.U,v $ diff --git a/mcon/U/sitelib.U b/mcon/U/sitelib.U index f6f197e..26d95c5 100644 --- a/mcon/U/sitelib.U +++ b/mcon/U/sitelib.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sitelib.U,v $ diff --git a/mcon/U/sizetype.U b/mcon/U/sizetype.U index 2556023..ff13eee 100644 --- a/mcon/U/sizetype.U +++ b/mcon/U/sizetype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/so.U b/mcon/U/so.U index 38121d6..9dd0285 100644 --- a/mcon/U/so.U +++ b/mcon/U/so.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: so.U,v $ diff --git a/mcon/U/sockopt.U b/mcon/U/sockopt.U index 1a6fc35..490704b 100644 --- a/mcon/U/sockopt.U +++ b/mcon/U/sockopt.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sockopt.U,v $ diff --git a/mcon/U/spitshell.U b/mcon/U/spitshell.U index 1692b52..b4db27d 100644 --- a/mcon/U/spitshell.U +++ b/mcon/U/spitshell.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: spitshell.U,v $ diff --git a/mcon/U/src.U b/mcon/U/src.U index 4d84bcc..7eb0775 100644 --- a/mcon/U/src.U +++ b/mcon/U/src.U @@ -3,10 +3,10 @@ ?RCS: Copyright (c) 1996, Cygnus Support ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Tom Tromey diff --git a/mcon/U/ssizetype.U b/mcon/U/ssizetype.U index 70dcc69..4d0dea3 100644 --- a/mcon/U/ssizetype.U +++ b/mcon/U/ssizetype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Andy Dougherty diff --git a/mcon/U/startperl.U b/mcon/U/startperl.U index 7428b7e..dfb66ef 100644 --- a/mcon/U/startperl.U +++ b/mcon/U/startperl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: startperl.U,v $ diff --git a/mcon/U/startsh.U b/mcon/U/startsh.U index b118449..5c16ad8 100644 --- a/mcon/U/startsh.U +++ b/mcon/U/startsh.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: startsh.U,v $ diff --git a/mcon/U/stdchar.U b/mcon/U/stdchar.U index d2328a0..5182d8c 100644 --- a/mcon/U/stdchar.U +++ b/mcon/U/stdchar.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: stdchar.U,v $ diff --git a/mcon/U/sunscanf.U b/mcon/U/sunscanf.U index a16fdaa..c106ba6 100644 --- a/mcon/U/sunscanf.U +++ b/mcon/U/sunscanf.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sunscanf.U,v $ diff --git a/mcon/U/sysman.U b/mcon/U/sysman.U index 6f50e5d..157b1e8 100644 --- a/mcon/U/sysman.U +++ b/mcon/U/sysman.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: sysman.U,v $ diff --git a/mcon/U/trnl.U b/mcon/U/trnl.U index 5eeb908..df5fa8a 100644 --- a/mcon/U/trnl.U +++ b/mcon/U/trnl.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 1998 Andy Dougherty diff --git a/mcon/U/uidtype.U b/mcon/U/uidtype.U index 4e06355..8db7b6d 100644 --- a/mcon/U/uidtype.U +++ b/mcon/U/uidtype.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: uidtype.U,v $ diff --git a/mcon/U/usenm.U b/mcon/U/usenm.U index 2e3dfad..79eab00 100644 --- a/mcon/U/usenm.U +++ b/mcon/U/usenm.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: usenm.U,v $ diff --git a/mcon/U/usesocks.U b/mcon/U/usesocks.U index cd30e4d..05c3979 100644 --- a/mcon/U/usesocks.U +++ b/mcon/U/usesocks.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 1999 Jarkko Hietaniemi diff --git a/mcon/U/usrinc.U b/mcon/U/usrinc.U index e1e1c04..e124bb1 100644 --- a/mcon/U/usrinc.U +++ b/mcon/U/usrinc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: usrinc.U,v $ diff --git a/mcon/U/vaproto.U b/mcon/U/vaproto.U index 986c451..57b58e0 100644 --- a/mcon/U/vaproto.U +++ b/mcon/U/vaproto.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Graham Stoney diff --git a/mcon/U/voidflags.U b/mcon/U/voidflags.U index f3da0b8..d0c9f26 100644 --- a/mcon/U/voidflags.U +++ b/mcon/U/voidflags.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: voidflags.U,v $ diff --git a/mcon/U/warnflags.U b/mcon/U/warnflags.U index 97e0c8e..9946cbd 100644 --- a/mcon/U/warnflags.U +++ b/mcon/U/warnflags.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Original Author: Graham Stoney diff --git a/mcon/U/yacc.U b/mcon/U/yacc.U index d828917..a442969 100644 --- a/mcon/U/yacc.U +++ b/mcon/U/yacc.U @@ -2,10 +2,10 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: yacc.U,v $ -- cgit v1.2.3 From 6353de8ce2fd2acbeb6207be6755a5fdee30cd9b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 12 Jun 2013 07:24:32 +0000 Subject: Added check for __builtin_bswap32. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@168 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 3 ++- mcon/U/d_built_bswap32.U | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 mcon/U/d_built_bswap32.U diff --git a/MANIFEST b/MANIFEST index cc9f6d9..a4fd92f 100644 --- a/MANIFEST +++ b/MANIFEST @@ -173,6 +173,7 @@ mcon/U/d_bfd_lib.U Is the BFD library available? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? +mcon/U/d_built_bswap32.U Is __builtin_bswap32() available? mcon/U/d_built_clz.U Is __builtin_clz() available? mcon/U/d_built_ctz.U Is __builtin_ctz() available? mcon/U/d_built_memcmp.U Is __builtin_memcmp() available? @@ -223,7 +224,6 @@ mcon/U/d_fgetpos.U Do we have fgetpos()? mcon/U/d_flexfnam.U Long filenames? mcon/U/d_flock.U Do we have flock()? mcon/U/d_fmod.U Do we have fmod()? -mcon/U/d_ptattr_setstack.U Do we have pthread_attr_setstack()? mcon/U/d_fork.U Do we have fork()? mcon/U/d_fsetpos.U Do we have fsetpos()? mcon/U/d_ftime.U Do we have ftime()? @@ -329,6 +329,7 @@ mcon/U/d_posix_memalign.U Do we have posix_memalign()? mcon/U/d_pread.U Do we have pread()? mcon/U/d_preadv.U Do we have preadv()? mcon/U/d_psignal.U Do we have psignal()? +mcon/U/d_ptattr_setstack.U Do we have pthread_attr_setstack()? mcon/U/d_pwrite.U Do we have pwrite()? mcon/U/d_pwritev.U Do we have pwritev()? mcon/U/d_random.U Do we have random()? diff --git a/mcon/U/d_built_bswap32.U b/mcon/U/d_built_bswap32.U new file mode 100644 index 0000000..0f22396 --- /dev/null +++ b/mcon/U/d_built_bswap32.U @@ -0,0 +1,35 @@ +?RCS: +?RCS: Copyright (c) 2013 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_built_bswap32: Trylink cat +?MAKE: -pick add $@ %< +?S:d_built_bswap32: +?S: This variable conditionally defines the HAS_BUILTIN_BSWAP32 symbol, which +?S: indicates to the C program that __builtin_bswap32 is available. +?S:. +?C:HAS_BUILTIN_BSWAP32: +?C: This symbol, if defined, indicates that __builtin_bswap32 routine is +?C: available to byte-swap a 32-bit value (little <-> big endian). +?C:. +?H:#$d_built_bswap32 HAS_BUILTIN_BSWAP32 /**/ +?H:. +?LINT:set d_built_bswap32 +: check for __builtin_bswap32 +$cat >try.c < Date: Fri, 30 Aug 2013 16:43:47 +0000 Subject: Added checks for fsync() and fdatasync(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@169 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/U/d_fdatasync.U | 41 +++++++++++++++++++++++++++++++++++++++++ mcon/U/d_fsync.U | 41 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 84 insertions(+) create mode 100644 mcon/U/d_fdatasync.U create mode 100644 mcon/U/d_fsync.U diff --git a/MANIFEST b/MANIFEST index a4fd92f..7c458ed 100644 --- a/MANIFEST +++ b/MANIFEST @@ -219,6 +219,7 @@ mcon/U/d_fchmod.U Do we have fchmod()? mcon/U/d_fchown.U Do we have fchown()? mcon/U/d_fcntl.U Do we have fcntl()? mcon/U/d_fd_set.U Do we have the fd set manipulation macros? +mcon/U/d_fdatasync.U Do we have fdatasync()? mcon/U/d_ffs.U Do we have ffs()? mcon/U/d_fgetpos.U Do we have fgetpos()? mcon/U/d_flexfnam.U Long filenames? @@ -226,6 +227,7 @@ mcon/U/d_flock.U Do we have flock()? mcon/U/d_fmod.U Do we have fmod()? mcon/U/d_fork.U Do we have fork()? mcon/U/d_fsetpos.U Do we have fsetpos()? +mcon/U/d_fsync.U Do we have fsync()? mcon/U/d_ftime.U Do we have ftime()? mcon/U/d_ftrncate.U Do we have ftruncate()? mcon/U/d_gconvert.U Do we have gconvert() or gcvt()? diff --git a/mcon/U/d_fdatasync.U b/mcon/U/d_fdatasync.U new file mode 100644 index 0000000..b989630 --- /dev/null +++ b/mcon/U/d_fdatasync.U @@ -0,0 +1,41 @@ +?RCS: +?RCS: Copyright (c) 2013 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_fdatasync: Trylink cat i_unistd +?MAKE: -pick add $@ %< +?S:d_fdatasync: +?S: This variable conditionally defines the HAS_FDATASYNC symbol, which +?S: indicates to the C program that the fdatasync() routine is available +?S: to synchronize a file's in-core data with the storage device. +?S:. +?C:HAS_FDATASYNC: +?C: This symbol, if defined, indicates that the fdatasync routine is available +?C: to synchronize a file's in-core data with the storage device. +?C:. +?H:#$d_fdatasync HAS_FDATASYNC /**/ +?H:. +?LINT:set d_fdatasync +: see if fdatasync exists +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret, fd; + ret |= fdatasync(fd); + return ret ? 0 : 1; +} +EOC +cyn=fdatasync +set d_fdatasync +eval $trylink + diff --git a/mcon/U/d_fsync.U b/mcon/U/d_fsync.U new file mode 100644 index 0000000..0bc9e4a --- /dev/null +++ b/mcon/U/d_fsync.U @@ -0,0 +1,41 @@ +?RCS: +?RCS: Copyright (c) 2013 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_fsync: Trylink cat i_unistd +?MAKE: -pick add $@ %< +?S:d_fsync: +?S: This variable conditionally defines the HAS_FSYNC symbol, which +?S: indicates to the C program that the fsync() routine is available +?S: to synchronize a file's in-core state with the storage device. +?S:. +?C:HAS_FSYNC: +?C: This symbol, if defined, indicates that the fsync routine is available +?C: to synchronize a file's in-core state with the storage device. +?C:. +?H:#$d_fsync HAS_FSYNC /**/ +?H:. +?LINT:set d_fsync +: see if fsync exists +$cat >try.c < +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include +#endif +int main(void) +{ + static int ret, fd; + ret |= fsync(fd); + return ret ? 0 : 1; +} +EOC +cyn=fsync +set d_fsync +eval $trylink + -- cgit v1.2.3 From c4a0e9597a6487fc538a0e469ebfb4bf60f7c873 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 30 Aug 2013 16:47:47 +0000 Subject: Must define WINVER before including any system file on newest MinGW. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@170 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_getaddrinfo.U | 6 +++--- mcon/U/d_getnameinfo.U | 6 +++--- mcon/U/d_iptos.U | 6 +++--- mcon/U/d_msg_flags.U | 6 +++--- mcon/U/d_recvmsg.U | 6 +++--- mcon/U/d_sendmsg.U | 6 +++--- 6 files changed, 18 insertions(+), 18 deletions(-) diff --git a/mcon/U/d_getaddrinfo.U b/mcon/U/d_getaddrinfo.U index a94bb62..d36e504 100644 --- a/mcon/U/d_getaddrinfo.U +++ b/mcon/U/d_getaddrinfo.U @@ -30,6 +30,9 @@ $cat >try.c < #ifdef I_SYS_SOCKET #include @@ -43,9 +46,6 @@ $cat >try.c < #endif -#ifdef WINDOWS_SYSTEM -#define WINVER 0x0501 -#endif #ifdef I_WINSOCK2 #include #endif diff --git a/mcon/U/d_getnameinfo.U b/mcon/U/d_getnameinfo.U index 7c18eae..10af525 100644 --- a/mcon/U/d_getnameinfo.U +++ b/mcon/U/d_getnameinfo.U @@ -30,6 +30,9 @@ $cat >try.c < #ifdef I_SYS_SOCKET #include @@ -43,9 +46,6 @@ $cat >try.c < #endif -#ifdef WINDOWS_SYSTEM -#define WINVER 0x0501 -#endif #ifdef I_WINSOCK2 #include #endif diff --git a/mcon/U/d_iptos.U b/mcon/U/d_iptos.U index fe2a4b6..08db48f 100644 --- a/mcon/U/d_iptos.U +++ b/mcon/U/d_iptos.U @@ -47,12 +47,12 @@ $cat >iptos < -#endif #ifdef WINDOWS_SYSTEM #define WINVER 0x0501 #endif +#ifdef I_SYS_SOCKET +#include +#endif #ifdef I_WINSOCK2 #include #endif diff --git a/mcon/U/d_msg_flags.U b/mcon/U/d_msg_flags.U index d64444c..0a94db3 100644 --- a/mcon/U/d_msg_flags.U +++ b/mcon/U/d_msg_flags.U @@ -31,15 +31,15 @@ $cat >try.c < #endif #ifdef I_SYS_SOCKET #include #endif -#ifdef WINDOWS_SYSTEM -#define WINVER 0x0501 -#endif #ifdef I_WINSOCK2 #include #endif diff --git a/mcon/U/d_recvmsg.U b/mcon/U/d_recvmsg.U index 0be12d0..4e3d488 100644 --- a/mcon/U/d_recvmsg.U +++ b/mcon/U/d_recvmsg.U @@ -31,15 +31,15 @@ $cat >try.c < #endif #ifdef I_SYS_SOCKET #include #endif -#ifdef WINDOWS_SYSTEM -#define WINVER 0x0501 -#endif #ifdef I_WINSOCK2 #include #endif diff --git a/mcon/U/d_sendmsg.U b/mcon/U/d_sendmsg.U index 0cd2782..ef668c9 100644 --- a/mcon/U/d_sendmsg.U +++ b/mcon/U/d_sendmsg.U @@ -31,15 +31,15 @@ $cat >try.c < #endif #ifdef I_SYS_SOCKET #include #endif -#ifdef WINDOWS_SYSTEM -#define WINVER 0x0501 -#endif #ifdef I_WINSOCK2 #include #endif -- cgit v1.2.3 From 5332a1d4bb70383c277cb88977c512ef3f6af42b Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Wed, 4 Sep 2013 17:43:27 +0000 Subject: Newest versions require PACKAGE and PACKAGE_VERSION to be defined prior inclusion (binutils-2.23 and higher). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@171 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_bfd_lib.U | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/mcon/U/d_bfd_lib.U b/mcon/U/d_bfd_lib.U index 2ccfab0..87f6949 100644 --- a/mcon/U/d_bfd_lib.U +++ b/mcon/U/d_bfd_lib.U @@ -12,18 +12,27 @@ ?MAKE: -pick add $@ %< ?S:d_bfd_lib: ?S: This variable conditionally defines the HAS_BFD_LIBRARY symbol, which -?S: indicates to the C program that the bfd library is available. +?S: indicates to the C program that the BFD library is available. ?S:. ?C:HAS_BFD_LIBRARY : -?C: This symbol, if defined, indicates that the bfd library is available +?C: This symbol, if defined, indicates that the BFD library is available ?C: to inspect symbols and debugging information. You can safely include -?C: the file when this symbol is defined. +?C: the file when this symbol is defined, making sure to define +?C: the PACKAGE and PACKAGE_VERSION symbols, just in case we're facing +?C: binutils 2.23 or higher. ?C:. ?H:#$d_bfd_lib HAS_BFD_LIBRARY /**/ ?H:. ?LINT:set d_bfd_lib : see whether the bfd library is available $cat >try.c <, or the file does not compile properly. Do it blindly +?X: since we do not want to bother with the actual version of the file. +?X: This is a BFD library bug, as reported in: +?X: https://sourceware.org/bugzilla/show_bug.cgi?id=15920 +#define PACKAGE +#define PACKAGE_VERSION #include int main(void) { -- cgit v1.2.3 From fd88285592058969b8de7412564413ed7679c6a4 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 10 Sep 2013 11:07:20 +0000 Subject: Added check for sigaltstack(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@172 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_sigaltstack.U | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 mcon/U/d_sigaltstack.U diff --git a/MANIFEST b/MANIFEST index 7c458ed..6393e1c 100644 --- a/MANIFEST +++ b/MANIFEST @@ -385,6 +385,7 @@ mcon/U/d_shmctl.U Do we have shmctl()? mcon/U/d_shmdt.U Do we have shmdt()? mcon/U/d_shmget.U Do we have shmget()? mcon/U/d_sigaction.U Do we have sigaction()? +mcon/U/d_sigaltstack.U Do we have sigaltstack()? mcon/U/d_sigblock.U Do we have sigblock()? mcon/U/d_sighold.U Do we have sighold()? mcon/U/d_siglist.U Do we have sys_siglist[]? diff --git a/mcon/U/d_sigaltstack.U b/mcon/U/d_sigaltstack.U new file mode 100644 index 0000000..e9e4891 --- /dev/null +++ b/mcon/U/d_sigaltstack.U @@ -0,0 +1,42 @@ +?RCS: +?RCS: Copyright (c) 2013, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_sigaltstack: Trylink cat +?MAKE: -pick add $@ %< +?S:d_sigaltstack: +?S: This variable conditionally defines the HAS_SIGALTSTACK symbol, which +?S: indicates that the sigaltstack() routine is available to define an +?S: alternate signal stack. +?S:. +?C:HAS_SIGALTSTACK: +?C: This symbol, if defined, indicates that the sigaltstack() routine +?C: is available to define an alternate signal stack. +?C:. +?H:#$d_sigaltstack HAS_SIGALTSTACK /**/ +?H:. +?LINT:set d_sigaltstack +: see if we have sigaltstack +$cat >try.c < +#include +int main(void) +{ + stack_t ss; + static int ret; + ss.ss_sp = NULL; + ss.ss_flags |= SS_ONSTACK | SS_DISABLE; + ss.ss_size = SIGSTKSZ + MINSIGSTKSZ; + ret |= sigaltstack(&ss, NULL); + return ret ? 0 : 1; +} +EOC +cyn=sigaltstack +set d_sigaltstack +eval $trylink + -- cgit v1.2.3 From 0d4893ddc60f31485fbcfbe813871e386a933e49 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 5 Apr 2014 08:10:18 +0000 Subject: The jmake Index depends on files/Jmake.rules. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@173 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/Jmakefile | 2 +- jmake/Makefile.SH | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/jmake/Jmakefile b/jmake/Jmakefile index e204d7d..22d336a 100644 --- a/jmake/Jmakefile +++ b/jmake/Jmakefile @@ -25,7 +25,7 @@ AllTarget(Index) -Index: bindex +Index: bindex files/Jmake.rules chmod +x bindex ./bindex diff --git a/jmake/Makefile.SH b/jmake/Makefile.SH index eaa7517..b4fe586 100755 --- a/jmake/Makefile.SH +++ b/jmake/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] -: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-172] +: $X-Id: Jmake.tmpl 156 2012-12-19 16:44:39Z rmanfredi $ case $CONFIG in '') @@ -59,7 +59,7 @@ SCRIPTS = jmake jmkmf $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ +# $X-Id: Jmake.rules 106 2011-11-25 20:36:12Z rmanfredi $ ######################################################################## # Start of Jmakefile @@ -90,7 +90,7 @@ all:: Index local_realclean:: $(RM) Index -Index: bindex +Index: bindex files/Jmake.rules chmod +x bindex ./bindex @@ -241,6 +241,8 @@ local_clobber:: local_realclean $(RM) Makefile config.sh install:: local_install + @exit 0 + install.man:: maybe_install.man deinstall:: local_deinstall deinstall.man:: maybe_deinstall.man -- cgit v1.2.3 From 8ec557b6a0ded6338c92471a208758ae2ad6fdcb Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 5 Apr 2014 08:19:48 +0000 Subject: Added LinkSourceFileAlias() and added depend/realclean to LinkSourceFile(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@174 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/Makefile.SH | 2 +- jmake/files/Jmake.rules | 22 +++++++++++++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/jmake/Makefile.SH b/jmake/Makefile.SH index b4fe586..76a7182 100755 --- a/jmake/Makefile.SH +++ b/jmake/Makefile.SH @@ -64,7 +64,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 48 2010-11-28 23:05:09Z rmanfredi $ +# $X-Id: Jmakefile 173 2014-04-05 08:10:18Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index e81d291..af53c13 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -1140,8 +1140,28 @@ NormalLintTarget($(SOURCES)) @!\ */ #define LinkSourceFile(src,dir) @!\ src: dir/src @@\ - $(RM) $@ @@\ + $(RM) -f $@ @@\ $(LN) $? $@ @!\ + @!\ +local_depend:: src @@\ + @!\ +local_realclean:: @@\ + $(RM) -f src @!\ + + +/* + * LinkSourceFileAlias: + * Snag source file from some other directory with a different local name. + */ +#define LinkSourceFileAlias(src,dir,alias) @!\ +alias: dir/src @@\ + $(RM) -f $@ @@\ + $(LN) $? $@ @!\ + @!\ +local_depend:: alias @@\ + @!\ +local_realclean:: @@\ + $(RM) -f alias @!\ /* -- cgit v1.2.3 From c0141166bffe012b17f276678038f1a6d947c933 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 7 Apr 2014 07:14:41 +0000 Subject: Fixed computation of i_rpcsvcdbm when there is no dbm available. Thanks to Philipp Rumpf for reporting this and hinting at the proper fix. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@175 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/i_dbm.U | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mcon/U/i_dbm.U b/mcon/U/i_dbm.U index a180f3b..0697238 100644 --- a/mcon/U/i_dbm.U +++ b/mcon/U/i_dbm.U @@ -71,6 +71,8 @@ $define) eval $setvar ;; *) + echo " " + echo "Hmm... trying to include to get dbmclose()..." >&4 $cat >try.c < int main(void) @@ -83,7 +85,7 @@ EOC set d_dbmclose eval $trylink - val="$define" + val="$d_dbmclose" set i_rpcsvcdbm eval $setvar -- cgit v1.2.3 From a8943af6d4b91cc5d3c2d4d391f4d6927ac295b6 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 8 Apr 2014 10:39:13 +0000 Subject: Added check for __builtin_bswap64(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@176 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_built_bswap64.U | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 mcon/U/d_built_bswap64.U diff --git a/MANIFEST b/MANIFEST index 6393e1c..8891ffd 100644 --- a/MANIFEST +++ b/MANIFEST @@ -174,6 +174,7 @@ mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? mcon/U/d_built_bswap32.U Is __builtin_bswap32() available? +mcon/U/d_built_bswap64.U Is __builtin_bswap64() available? mcon/U/d_built_clz.U Is __builtin_clz() available? mcon/U/d_built_ctz.U Is __builtin_ctz() available? mcon/U/d_built_memcmp.U Is __builtin_memcmp() available? diff --git a/mcon/U/d_built_bswap64.U b/mcon/U/d_built_bswap64.U new file mode 100644 index 0000000..6379502 --- /dev/null +++ b/mcon/U/d_built_bswap64.U @@ -0,0 +1,35 @@ +?RCS: +?RCS: Copyright (c) 2013 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_built_bswap64: Trylink cat +?MAKE: -pick add $@ %< +?S:d_built_bswap64: +?S: This variable conditionally defines the HAS_BUILTIN_BSWAP64 symbol, which +?S: indicates to the C program that __builtin_bswap64 is available. +?S:. +?C:HAS_BUILTIN_BSWAP64: +?C: This symbol, if defined, indicates that __builtin_bswap64 routine is +?C: available to byte-swap a 64-bit value (little <-> big endian). +?C:. +?H:#$d_built_bswap64 HAS_BUILTIN_BSWAP64 /**/ +?H:. +?LINT:set d_built_bswap64 +: check for __builtin_bswap64 +$cat >try.c < Date: Tue, 8 Apr 2014 10:42:18 +0000 Subject: Always regenerate the Glossary file. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@177 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/Jmakefile | 4 +++- mcon/Makefile.SH | 12 ++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/mcon/Jmakefile b/mcon/Jmakefile index 4c2955e..36b6d1f 100644 --- a/mcon/Jmakefile +++ b/mcon/Jmakefile @@ -32,7 +32,9 @@ SetSubdirs(man) AllTarget(Glossary) -Glossary: makegloss +.FORCE: + +Glossary: .FORCE chmod +x makegloss ./makegloss diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH index 6559d5a..17922d7 100755 --- a/mcon/Makefile.SH +++ b/mcon/Makefile.SH @@ -1,5 +1,5 @@ -: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-43] -: $X-Id: Jmake.tmpl 47 2010-11-28 22:23:13Z rmanfredi $ +: Makefile.SH generated from Jmake.tmpl and Jmakefile [jmake 3.5-174] +: $X-Id: Jmake.tmpl 156 2012-12-19 16:44:39Z rmanfredi $ case $CONFIG in '') @@ -58,7 +58,7 @@ BIN = metaconfig metalint metaxref $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Jmake rules for building libraries, programs, scripts, and data files -# $X-Id: Jmake.rules 18 2006-12-27 10:35:09Z rmanfredi $ +# $X-Id: Jmake.rules 174 2014-04-05 08:19:48Z rmanfredi $ ######################################################################## # Start of Jmakefile @@ -95,7 +95,9 @@ all:: Glossary local_realclean:: $(RM) Glossary -Glossary: makegloss +.FORCE: + +Glossary: .FORCE chmod +x makegloss ./makegloss @@ -297,6 +299,8 @@ local_clobber:: local_realclean $(RM) Makefile config.sh install:: local_install sub_install + @exit 0 + install.man:: maybe_install.man sub_install.man deinstall:: sub_deinstall local_deinstall deinstall.man:: sub_deinstall.man maybe_deinstall.man -- cgit v1.2.3 From 316daa956e6274a64839b2fc717161ca6384b68c Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 8 Apr 2014 10:42:58 +0000 Subject: Fixed detection of IEEE-754 floating point byte ordering for Solaris. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@178 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_ieee754.U | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_ieee754.U b/mcon/U/d_ieee754.U index 05716bb..1abb0aa 100644 --- a/mcon/U/d_ieee754.U +++ b/mcon/U/d_ieee754.U @@ -35,6 +35,7 @@ ?H:#define IEEE754_BYTEORDER 0x$ieee754_byteorder /* large digits for MSB */ ?H:. ?T:order +?F:!str !try.c ?LINT:set d_ieee754 : check for ieee754 float and their endianness ?X: @@ -58,8 +59,21 @@ if $cc -c $ccflags try.c >/dev/null 2>&1; then elif $contains isIEEE754Sys try$_o >/dev/null 2>&1; then val=$define order=1234 +?X: +?X: On Solaris, "grep" does not work on binary files -- use strings. +?X: else - val=$undef + strings try$_o >str 2>/dev/null + if $contains ISieee754Sys str >/dev/null 2>&1; then + val=$define + order=4321 + elif $contains isIEEE754Sys str >/dev/null 2>&1; then + val=$define + order=1234 + else + val=$undef + fi + $rm -f str fi fi set d_ieee754 -- cgit v1.2.3 From eaaeda3a763b14ad72c6a84980f458448e7aa3fa Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 17 Apr 2014 15:45:22 +0000 Subject: Added checks for clock_gettime() and clock_getres(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@179 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/Makefile.SH | 2 +- mcon/U/d_clock_getres.U | 38 ++++++++++++++++++++++++++++++++++++++ mcon/U/d_clock_gettime.U | 38 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 79 insertions(+), 1 deletion(-) create mode 100644 mcon/U/d_clock_getres.U create mode 100644 mcon/U/d_clock_gettime.U diff --git a/MANIFEST b/MANIFEST index 8891ffd..ffd22b5 100644 --- a/MANIFEST +++ b/MANIFEST @@ -189,6 +189,8 @@ mcon/U/d_chown.U Do we have chown()? mcon/U/d_chroot.U Do we have chroot()? mcon/U/d_chsize.U Size of a char mcon/U/d_ckeypad.U Do we have the curses keypad()? +mcon/U/d_clock_getres.U Do we have clock_getres()? +mcon/U/d_clock_gettime.U Do we have clock_gettime()? mcon/U/d_closedir.U Do we have closedir()? mcon/U/d_closefrom.U Do we have closefrom()? mcon/U/d_const.U Can cc grok the const keyword? diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH index 17922d7..54a10b6 100755 --- a/mcon/Makefile.SH +++ b/mcon/Makefile.SH @@ -63,7 +63,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' ######################################################################## # Start of Jmakefile -# $X-Id: Jmakefile 48 2010-11-28 23:05:09Z rmanfredi $ +# $X-Id: Jmakefile 177 2014-04-08 10:42:18Z rmanfredi $ # # Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi # diff --git a/mcon/U/d_clock_getres.U b/mcon/U/d_clock_getres.U new file mode 100644 index 0000000..6fd0216 --- /dev/null +++ b/mcon/U/d_clock_getres.U @@ -0,0 +1,38 @@ +?RCS: +?RCS: Copyright (c) 2014 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_clock_getres: Trylink cat +?MAKE: -pick add $@ %< +?S:d_clock_getres: +?S: This variable conditionally defines HAS_CLOCK_GETRES when clock_getres() is +?S: available to fetch the granularity of the available clock. +?S:. +?C:HAS_CLOCK_GETRES: +?C: This symbol, if defined, indicates that the clock_getres() system call is +?C: available to fetch the granularity of available clock (CLOCK_REALTIME is +?C: a valid clock when the symbol is defined). +?C:. +?H:#$d_clock_getres HAS_CLOCK_GETRES /**/ +?H:. +?LINT:set d_clock_getres +: see whether clock_getres exists +$cat >try.c < +int main(void) +{ + int ret; + struct timespec res; + ret = clock_getres(CLOCK_REALTIME, &res); + return ret ? 0 : 1; +} +EOC +cyn=clock_getres +set d_clock_getres +eval $trylink + diff --git a/mcon/U/d_clock_gettime.U b/mcon/U/d_clock_gettime.U new file mode 100644 index 0000000..ab5cab4 --- /dev/null +++ b/mcon/U/d_clock_gettime.U @@ -0,0 +1,38 @@ +?RCS: +?RCS: Copyright (c) 2014 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_clock_gettime: Trylink cat +?MAKE: -pick add $@ %< +?S:d_clock_gettime: +?S: This variable conditionally defines HAS_CLOCK_GETTIME when clock_gettime() +?S: is available to fetch the clock. +?S:. +?C:HAS_CLOCK_GETTIME: +?C: This symbol, if defined, indicates that the clock_gettime() system call is +?C: available to fetch the clock (CLOCK_REALTIME is a valid clock when the +?C: symbol is defined). +?C:. +?H:#$d_clock_gettime HAS_CLOCK_GETTIME /**/ +?H:. +?LINT:set d_clock_gettime +: see whether clock_gettime exists +$cat >try.c < +int main(void) +{ + int ret; + struct timespec tp; + ret = clock_gettime(CLOCK_REALTIME, &tp); + return ret ? 0 : 1; +} +EOC +cyn=clock_gettime +set d_clock_gettime +eval $trylink + -- cgit v1.2.3 From 67ae1a4a3000d593f9af6cb123a477c9700c5479 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 17 Apr 2014 15:47:46 +0000 Subject: Recent versions of the BFD library no longer require linking with -liberty. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@180 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_bfd_lib.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_bfd_lib.U b/mcon/U/d_bfd_lib.U index 87f6949..cf21c45 100644 --- a/mcon/U/d_bfd_lib.U +++ b/mcon/U/d_bfd_lib.U @@ -43,6 +43,6 @@ int main(void) EOC cyn="whether the BFD library is available" set d_bfd_lib '-lbfd -lintl -liberty' '-lbfd -liberty' '-lbfd -liberty -lz' \ - '-lbfd -lintl -liberty -lz' + '-lbfd -lintl -liberty -lz' '-lbfd -lz' '-lbfd -lintl -lz' eval $trylink -- cgit v1.2.3 From 1bb678521acc138bb0dda6e81c70b264496b5215 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Tue, 22 Jul 2014 09:28:59 +0000 Subject: Also try to link with -ldl for the BFD library check, to cope with new versions. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@181 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_bfd_lib.U | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_bfd_lib.U b/mcon/U/d_bfd_lib.U index cf21c45..a58d1c1 100644 --- a/mcon/U/d_bfd_lib.U +++ b/mcon/U/d_bfd_lib.U @@ -42,7 +42,10 @@ int main(void) } EOC cyn="whether the BFD library is available" +?X: Modern BFD library versions no longer require -lintl and -liberty but do +?X: require -ldl, on Linux at least. -- RAM, 2014-07-22 set d_bfd_lib '-lbfd -lintl -liberty' '-lbfd -liberty' '-lbfd -liberty -lz' \ - '-lbfd -lintl -liberty -lz' '-lbfd -lz' '-lbfd -lintl -lz' + '-lbfd -lintl -liberty -lz' '-lbfd -lz' '-lbfd -lintl -lz' \ + '-lbfd -lz -ldl' eval $trylink -- cgit v1.2.3 From caa2d751853b6285d4f4db52517ffff26809538f Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 23 Nov 2014 16:40:05 +0000 Subject: Fixed typo in ?S comment. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@182 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_cbrt.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_cbrt.U b/mcon/U/d_cbrt.U index a1462c6..ccc9a6e 100644 --- a/mcon/U/d_cbrt.U +++ b/mcon/U/d_cbrt.U @@ -15,7 +15,7 @@ ?MAKE:d_cbrt: Trylink cat ?MAKE: -pick add $@ %< ?S:d_cbrt: -?S: This variable conditionally defines the CBRT symbol, which +?S: This variable conditionally defines the HAS_CBRT symbol, which ?S: indicates to the C program that the cbrt() (cube root) function ?S: is available. ?S:. -- cgit v1.2.3 From 650746ce380e1ff29d17517eeb1f80af5e6e7852 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 12 Apr 2015 09:48:11 +0000 Subject: Added an "install-strip" target to install programs with stripping. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@183 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 35 ++++++++++++++++++++++++----------- jmake/files/Jmake.tmpl | 4 ++++ 2 files changed, 28 insertions(+), 11 deletions(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index af53c13..ab46f1e 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -282,7 +282,7 @@ local_deinstall.man:: @@\ * Generate rules to install the indicated library. */ #define InstallLibrary(libname,dest) @!\ -local_install:: lib^^libname.a @@\ +local_install local_install-strip:: lib^^libname.a @@\ _MakeInstallDirIgnore(dest) \ @@\ $(INSTALL) -c -m 644 lib^^libname.a $(INSTALL_PREFIX)^^^dest @@\ $(RANLIB) dest/lib^^libname.a @@\ @@ -297,7 +297,7 @@ local_deinstall:: @@\ * Generate rules to install the shared library. */ #define InstallSharedLibrary(libname,rev,dest) @!\ -local_install:: lib^^libname.so.rev @@\ +local_install local_install-strip:: lib^^libname.so.rev @@\ _MakeInstallDirIgnore(dest) \ @@\ $(INSTALL) -c -m 444 lib^^libname.so.rev $(INSTALL_PREFIX)^^^dest @!\ @!\ @@ -310,7 +310,7 @@ local_deinstall:: @@\ * Generate rules to install the shared library data */ #define InstallSharedLibraryData(libname,rev,dest) @!\ -local_install:: lib^^libname.sa.rev @@\ +local_install local_install-strip:: lib^^libname.sa.rev @@\ _MakeInstallDirIgnore(dest) \ @@\ $(INSTALL) -c -m 444 lib^^libname.sa.rev $(INSTALL_PREFIX)^^^dest @!\ @!\ @@ -324,7 +324,7 @@ local_deinstall:: @@\ * for the purposes of aliasing. */ #define InstallLibraryAlias(libname,alias,dest) @!\ -local_install:: lib^^libname.a @@\ +local_install local_install-strip:: lib^^libname.a @@\ $(RM) lib^^alias.a @@\ -(cd dest; $(LN) lib^^libname.a lib^^alias.a) @!\ @!\ @@ -376,7 +376,7 @@ InstallManPageLong(file,dest,file) * install flags. */ #define InstallNonExec(file,dest) @!\ -local_install:: file @@\ +local_install local_install-strip:: file @@\ _MakeInstallDirIgnore(dest) \ @@\ $(INSTALL) -c -m 444 file $(INSTALL_PREFIX)^^^dest @!\ @!\ @@ -388,9 +388,15 @@ local_deinstall:: @@\ * InstallProgramWithFlags: * Generate rules to install an executable program using given * install flags. + * By default, program is not stripped, but the install-strip target + * will force stripping. */ #define InstallProgramWithFlags(program,dest,flags) @!\ local_install:: program @@\ + _MakeInstallDirIgnore(dest) \ @@\ + $(INSTALL) -c -m 555 flags program^^^$(_EXE) $(INSTALL_PREFIX)^^^dest @!\ + @!\ +local_install-strip:: program @@\ _MakeInstallDirIgnore(dest) \ @@\ $(INSTALL) -c -s -m 555 flags program^^^$(_EXE) $(INSTALL_PREFIX)^^^dest @!\ @!\ @@ -401,10 +407,10 @@ local_deinstall:: @@\ /* * InstallProgramNoStripWithFlags: * Generate rules to install an executable program using given - * install flags. + * install flags. The program is never stripped. */ #define InstallProgramNoStripWithFlags(program,dest,flags) @!\ -local_install:: program @@\ +local_install local_install-strip:: program @@\ _MakeInstallDirIgnore(dest) \ @@\ $(INSTALL) -c -m 555 flags program^^^$(_EXE) $(INSTALL_PREFIX)^^^dest @!\ @!\ @@ -416,6 +422,8 @@ local_deinstall:: @@\ * InstallProgram: * Generate rules to install an executable program using any special * install flags set in $(INSTALLFLAGS). + * By default, program is not stripped, but the install-strip target + * will force stripping. */ #define InstallProgram(program,dest) @!\ InstallProgramWithFlags(program,dest,^^) @@ -437,7 +445,7 @@ InstallProgramNoStripWithFlags(program,dest,^^) * install flags. */ #define InstallScriptWithFlags(script,dest,flags) @!\ -local_install:: script @@\ +local_install local_install-strip:: script @@\ _MakeInstallDirIgnore(dest) \ @@\ $(INSTALL) -c -m 555 flags script $(INSTALL_PREFIX)^^^dest @!\ @!\ @@ -461,7 +469,7 @@ InstallScriptWithFlags(script,dest,^^) */ #define InstallScripts() @!\ |once _InstallScripts_ @!\ -local_install:: $(SCRIPTS) $(LSCRIPTS) @@\ +local_install local_install-strip:: $(SCRIPTS) $(LSCRIPTS) @@\ _MakeInstallDirIgnore($(SCRIPTDIR)) \ @@\ for file in $(SCRIPTS) $(LSCRIPTS); do \ @@\ (set -x; \ @@\ @@ -644,6 +652,10 @@ local_clobber:: local_realclean @!\ %SUBDIRS:install:: local_install @@\ @exit 0 @!\ @!\ +?SUBDIRS:install-strip:: local_install-strip sub_install-strip @!\ +%SUBDIRS:install-strip:: local_install-strip @@\ + @exit 0 @!\ + @!\ ?SUBDIRS:install.man:: maybe_install.man sub_install.man @!\ %SUBDIRS:install.man:: maybe_install.man @!\ ?SUBDIRS:deinstall:: sub_deinstall local_deinstall @!\ @@ -1292,7 +1304,8 @@ DependDirs($(SUBDIRS)) * files. */ #define InstallSubdirs() \ -NamedSubTargetSubdirs(install,"Installing",^^) @!\ +NamedSubTargetSubdirs(install,"Installing",^^) @!\ +NamedSubTargetSubdirs(install-strip,"Installing (strip)",^^) @!\ NamedDepthTargetSubdirs(deinstall,"Deinstalling",^^) @@ -1425,7 +1438,7 @@ step:: @@\ * time (removed by deinstall). */ #define MakeInstallDirectories(dirs) @!\ -local_install:: @@\ +local_install local_install-strip:: @@\ _MakeInstallDirs(dirs) @!\ @!\ local_deinstall:: @@\ diff --git a/jmake/files/Jmake.tmpl b/jmake/files/Jmake.tmpl index 6bd1a17..313f795 100644 --- a/jmake/files/Jmake.tmpl +++ b/jmake/files/Jmake.tmpl @@ -217,6 +217,7 @@ MakeSubdirs() * in this directory. */ local_install:: +local_install-strip:: local_deinstall:: local_install.man:: local_deinstall.man:: @@ -229,6 +230,9 @@ local_deinstall.man:: local_install:: @echo "install in $(CURRENT) done." +local_install-strip:: + @echo "install (strip) in $(CURRENT) done." + local_deinstall:: @echo "deinstall in $(CURRENT) done." -- cgit v1.2.3 From e0333f701196c073579f1cd8aa7511108019bb0f Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 16 Apr 2015 22:57:50 +0000 Subject: Added test for fchdir(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@184 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_fchdir.U | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 mcon/U/d_fchdir.U diff --git a/MANIFEST b/MANIFEST index ffd22b5..9518b23 100644 --- a/MANIFEST +++ b/MANIFEST @@ -278,6 +278,7 @@ mcon/U/d_iptos.U Do we have IP TOS support? mcon/U/d_ipv6.U Do we have IPv6 support? mcon/U/d_isascii.U Do we have isascii()? mcon/U/d_itimer.U Do we have setitimer()? +mcon/U/d_fchdir.U Do we have fchdir()? mcon/U/d_keepsig.U Will signal handlers need to be rearmed? mcon/U/d_kevent_udata.U Is udata within struct kevent an integer? mcon/U/d_killpg.U Do we have killpg()? diff --git a/mcon/U/d_fchdir.U b/mcon/U/d_fchdir.U new file mode 100644 index 0000000..2ed47e2 --- /dev/null +++ b/mcon/U/d_fchdir.U @@ -0,0 +1,40 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_fchdir: Trylink cat i_unistd +?MAKE: -pick add $@ %< +?S:d_fchdir: +?S: This variable conditionally defines HAS_FCHDIR if fchdir() is +?S: available to change the directory to that of an opened directory. +?S:. +?C:HAS_FCHDIR: +?C: This symbol, if defined, indicates that the fchdir routine is +?C: available to change the working directory to that of the opened +?C: directory whose file descriptor is given. +?C:. +?H:#$d_fchdir HAS_FCHDIR /**/ +?H:. +?LINT:set d_fchdir +: see if fchdir exists +$cat >try.c < +#endif +int main(void) +{ + static int fd, ret; + ret |= fchdir(fd); + return ret ? 0 : 1; +} +EOC +cyn=fchdir +set d_fchdir +eval $trylink + -- cgit v1.2.3 From 193718d68aee65912f5e4008ec3484d0deef9efb Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 17 Apr 2015 07:20:44 +0000 Subject: Removed BSD-specific DT_WHT from the struct dirent check for a d_type field. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@185 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_dirent_d_type.U | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mcon/U/d_dirent_d_type.U b/mcon/U/d_dirent_d_type.U index e2ebb19..431d299 100644 --- a/mcon/U/d_dirent_d_type.U +++ b/mcon/U/d_dirent_d_type.U @@ -13,11 +13,13 @@ ?S:d_dirent_d_type: ?S: This variable conditionally defines the HAS_DIRENT_D_TYPE symbol, ?S: which indicates to the C program that struct dirent has an -?S: integer member d_type. +?S: integer member d_type. ?S:. ?C:HAS_DIRENT_D_TYPE: ?C: This symbol, if defined, indicates that struct dirent has an -?C: integer member d_type. +?C: integer member d_type. Note that DT_WHT is BSD-specific and may +?C: not be available. If DT_UNKNOWN is returned, the filesystem does +?C: not fill d_type even though it is present in the dir entry. ?C:. ?H:#$d_dirent_d_type HAS_DIRENT_D_TYPE /**/ ?H:. @@ -40,8 +42,7 @@ int main(void) | DT_BLK | DT_REG | DT_LNK - | DT_SOCK - | DT_WHT; + | DT_SOCK; return 0; } EOC -- cgit v1.2.3 From efd117dccf64f6a9b39fe014d7a67357f402fe26 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 17 Apr 2015 11:21:22 +0000 Subject: Added check for dirfd(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@186 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 3 ++- mcon/U/d_dirfd.U | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 mcon/U/d_dirfd.U diff --git a/MANIFEST b/MANIFEST index 9518b23..76f4e50 100644 --- a/MANIFEST +++ b/MANIFEST @@ -205,6 +205,7 @@ mcon/U/d_deflate.U Do we have zlib's deflate()? mcon/U/d_devpoll.U Can we use /dev/poll? mcon/U/d_difftime.U Do we have difftime()? mcon/U/d_dirent_d_type.U Does struct dirent has a member d_type? +mcon/U/d_dirfd.U Do we have dirfd()? mcon/U/d_dladdr.U Do we have dladdr()? mcon/U/d_dlerror.U Do we have dlerror()? mcon/U/d_dliterphdr.U Do we have dl_iterate_phdr()? @@ -218,6 +219,7 @@ mcon/U/d_epoll.U Can we use epoll_xxx() routines? mcon/U/d_etext_symbol.U Whether linker defines the "etext" symbol mcon/U/d_euc2jis.U Do we have euc2jis()? mcon/U/d_fast_assert.U Can we use fast assertions? +mcon/U/d_fchdir.U Do we have fchdir()? mcon/U/d_fchmod.U Do we have fchmod()? mcon/U/d_fchown.U Do we have fchown()? mcon/U/d_fcntl.U Do we have fcntl()? @@ -278,7 +280,6 @@ mcon/U/d_iptos.U Do we have IP TOS support? mcon/U/d_ipv6.U Do we have IPv6 support? mcon/U/d_isascii.U Do we have isascii()? mcon/U/d_itimer.U Do we have setitimer()? -mcon/U/d_fchdir.U Do we have fchdir()? mcon/U/d_keepsig.U Will signal handlers need to be rearmed? mcon/U/d_kevent_udata.U Is udata within struct kevent an integer? mcon/U/d_killpg.U Do we have killpg()? diff --git a/mcon/U/d_dirfd.U b/mcon/U/d_dirfd.U new file mode 100644 index 0000000..269b2d4 --- /dev/null +++ b/mcon/U/d_dirfd.U @@ -0,0 +1,42 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_dirfd: Trylink cat i_dirent +?MAKE: -pick add $@ %< +?S:d_dirfd: +?S: This variable conditionally defines HAS_DIRFD when dirfd() is +?S: available to get the underlying file descriptor from opendir(). +?S:. +?C:HAS_DIRFD: +?C: This symbol, if defined, indicates that the dirfd() routine is +?C: available to get the underlying file descriptor from a DIR * +?C: opened by opendir(). +?C:. +?H:#$d_dirfd HAS_DIRFD /**/ +?H:. +?LINT:set d_dirfd +: see if dirfd exists +$cat >try.c < +#$i_dirent I_DIRENT +#ifdef I_DIRENT +#include +#endif +int main(void) +{ + static DIR *dir; + static int ret; + ret = dirfd(dir); + return ret ? 0 : 1; +} +EOC +cyn=dirfd +set d_dirfd +eval $trylink + -- cgit v1.2.3 From 7b26fa2343e40b86497ba09bf6369b5ab7ed3703 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 18 Apr 2015 09:10:52 +0000 Subject: Added HAS_DIRENT_D_NAMELEN for a compile check of d_namelen. The legacy symbol DIRNAMELEN uses a weaker grep-based test, hence it should no longer be used. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@187 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_dirent_d_namelen.U | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 mcon/U/d_dirent_d_namelen.U diff --git a/MANIFEST b/MANIFEST index 76f4e50..557ee76 100644 --- a/MANIFEST +++ b/MANIFEST @@ -204,6 +204,7 @@ mcon/U/d_debugging.U Conditionally defines -DDEBUGGING mcon/U/d_deflate.U Do we have zlib's deflate()? mcon/U/d_devpoll.U Can we use /dev/poll? mcon/U/d_difftime.U Do we have difftime()? +mcon/U/d_dirent_d_namelen.U Does struct dirent has a member d_namelen? mcon/U/d_dirent_d_type.U Does struct dirent has a member d_type? mcon/U/d_dirfd.U Do we have dirfd()? mcon/U/d_dladdr.U Do we have dladdr()? diff --git a/mcon/U/d_dirent_d_namelen.U b/mcon/U/d_dirent_d_namelen.U new file mode 100644 index 0000000..48361a6 --- /dev/null +++ b/mcon/U/d_dirent_d_namelen.U @@ -0,0 +1,42 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_dirent_d_namelen: Trylink cat i_dirent +?MAKE: -pick add $@ %< +?S:d_dirent_d_namelen: +?S: This variable conditionally defines the HAS_DIRENT_D_NAMELEN symbol, +?S: which indicates to the C program that struct dirent has an +?S: integer member d_namelen. Better check for HAS_DIRENT_D_NAMELEN than +?S: DIRNAMLEN since the latter has a weaker test not involving compilation. +?S:. +?C:HAS_DIRENT_D_NAMELEN: +?C: This symbol, if defined, indicates that struct dirent has an +?C: integer member d_namelen to hold the actual string length of d_name. +?C:. +?H:#$d_dirent_d_namelen HAS_DIRENT_D_NAMELEN /**/ +?H:. +?LINT:set d_dirent_d_namelen +: check whether struct dirent has a member d_namelen. +$cat >try.c < +#$i_dirent I_DIRENT +#ifdef I_DIRENT +#include +#endif +int main(void) +{ + static struct dirent dir_entry; + dir_entry.d_namelen |= 1; + return 0; +} +EOC +cyn="whether struct dirent has a d_namelen member" +set d_dirent_d_namelen +eval $trylink + -- cgit v1.2.3 From 9f01c0c4d1fbc84af7cb19e8b9547dd641fff945 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 18 Apr 2015 10:46:24 +0000 Subject: Added check for fstatat(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@188 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_fstatat.U | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 mcon/U/d_fstatat.U diff --git a/MANIFEST b/MANIFEST index 557ee76..2324968 100644 --- a/MANIFEST +++ b/MANIFEST @@ -233,6 +233,7 @@ mcon/U/d_flock.U Do we have flock()? mcon/U/d_fmod.U Do we have fmod()? mcon/U/d_fork.U Do we have fork()? mcon/U/d_fsetpos.U Do we have fsetpos()? +mcon/U/d_fstatat.U Do we have fstatat()? mcon/U/d_fsync.U Do we have fsync()? mcon/U/d_ftime.U Do we have ftime()? mcon/U/d_ftrncate.U Do we have ftruncate()? diff --git a/mcon/U/d_fstatat.U b/mcon/U/d_fstatat.U new file mode 100644 index 0000000..b5af396 --- /dev/null +++ b/mcon/U/d_fstatat.U @@ -0,0 +1,46 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_fstatat: Trylink cat i_fcntl i_sysstat +?MAKE: -pick add $@ %< +?S:d_fstatat: +?S: This variable conditionally defines HAS_FSTATAT if fstatat() is +?S: available to do file stats with a relative path interepreted in +?S: the context of an opened directory. +?S:. +?C:HAS_FSTATAT: +?C: This symbol, if defined, indicates that the fstatat() routine is +?C: available to do file stats with a relative path interepreted in +?C: the context of an opened directory. +?C:. +?H:#$d_fstatat HAS_FSTATAT /**/ +?H:. +?LINT:set d_fstatat +: see if fstatat exists +$cat >try.c < /* AT_* constants */ +#endif +#ifdef I_SYS_STAT +#include +#endif +int main(void) +{ + static int ret; + struct stat sb; + ret |= fstatat(AT_FDCWD, "path", &sb, 0); + return ret ? 0 : 1; +} +EOC +cyn=fstatat +set d_fstatat +eval $trylink + -- cgit v1.2.3 From 0b59236f0ff7fb29f3537b88bdc610a4e5a9571a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 18 Apr 2015 12:14:30 +0000 Subject: Added check for openat(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@189 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_openat.U | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 mcon/U/d_openat.U diff --git a/MANIFEST b/MANIFEST index 2324968..ed927fe 100644 --- a/MANIFEST +++ b/MANIFEST @@ -324,6 +324,7 @@ mcon/U/d_nls.U Do we support NLS? mcon/U/d_nolnbuf.U Is stdout line buffered? mcon/U/d_normsig.U signal() vs sigset() mcon/U/d_open3.U Do we have the 3 arguments form for open()? +mcon/U/d_openat.U Do we have openat()? mcon/U/d_passwd.U Do we have passwd()? mcon/U/d_pathconf.U Do we have pathconf()? mcon/U/d_pause.U Do we have pause()? diff --git a/mcon/U/d_openat.U b/mcon/U/d_openat.U new file mode 100644 index 0000000..d7f8269 --- /dev/null +++ b/mcon/U/d_openat.U @@ -0,0 +1,41 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_openat: Trylink cat i_fcntl +?MAKE: -pick add $@ %< +?S:d_openat: +?S: This variable conditionally defines HAS_OPENAT if openat() is +?S: available to open files with a relative path interepreted in +?S: the context of an opened directory. +?S:. +?C:HAS_OPENAT: +?C: This symbol, if defined, indicates that the openat() routine is +?C: available to open files with a relative path interepreted in +?C: the context of an opened directory. +?C:. +?H:#$d_openat HAS_OPENAT /**/ +?H:. +?LINT:set d_openat +: see if openat exists +$cat >try.c < /* AT_* constants */ +#endif +int main(void) +{ + static int ret; + ret |= openat(AT_FDCWD, "path", /* flags */ 0, /* mode */ 0); + return ret ? 0 : 1; +} +EOC +cyn=openat +set d_openat +eval $trylink + -- cgit v1.2.3 From a23380a908b296a3e92ee05f79f3c5247e410fdf Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 18 Apr 2015 12:21:41 +0000 Subject: Added check for fdopendir(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@190 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_fdopendir.U | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 mcon/U/d_fdopendir.U diff --git a/MANIFEST b/MANIFEST index ed927fe..e64cc04 100644 --- a/MANIFEST +++ b/MANIFEST @@ -226,6 +226,7 @@ mcon/U/d_fchown.U Do we have fchown()? mcon/U/d_fcntl.U Do we have fcntl()? mcon/U/d_fd_set.U Do we have the fd set manipulation macros? mcon/U/d_fdatasync.U Do we have fdatasync()? +mcon/U/d_fdopendir.U Do we have fdopendir()? mcon/U/d_ffs.U Do we have ffs()? mcon/U/d_fgetpos.U Do we have fgetpos()? mcon/U/d_flexfnam.U Long filenames? diff --git a/mcon/U/d_fdopendir.U b/mcon/U/d_fdopendir.U new file mode 100644 index 0000000..585325a --- /dev/null +++ b/mcon/U/d_fdopendir.U @@ -0,0 +1,42 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_fdopendir: Trylink cat i_dirent +?MAKE: -pick add $@ %< +?S:d_fdopendir: +?S: This variable conditionally defines HAS_FDOPENDIR if fdopendir() is +?S: available to open a directory using an opened file descriptor already +?S: referring to that directory. +?S:. +?C:HAS_FDOPENDIR: +?C: This symbol, if defined, indicates that the fdopendir() routine is +?C: available to open directories using an opened file descriptor already +?C: referring to that directory. +?C:. +?H:#$d_fdopendir HAS_FDOPENDIR /**/ +?H:. +?LINT:set d_fdopendir +: see if fdopendir exists +$cat >try.c < +#ifdef I_DIRENT +#include +#endif +int main(void) +{ + static DIR *d; + d = fdopendir(0); + return NULL == d; +} +EOC +cyn=fdopendir +set d_fdopendir +eval $trylink + -- cgit v1.2.3 From f36cfa6b479ea3a55246622b5c0cfc38b9f1addb Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 19 Apr 2015 10:04:17 +0000 Subject: Patch from H.Merijn Brand to disable backslashes in -D and -U arguments. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@191 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/Options.U | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/mcon/U/Options.U b/mcon/U/Options.U index 6bc2fdb..f58f4c7 100644 --- a/mcon/U/Options.U +++ b/mcon/U/Options.U @@ -354,8 +354,19 @@ case "$silent" in true) exec 1>/dev/null;; esac -: run the defines and the undefines, if any, but leave the file out there... +?X: Patch from H.Merijn Brand -- 2015-04-19 +?X: The reasoning behind this change is that optdef.sh gets sourced and the +?X: arguments, like prefix, are passed around in different quotation styles +?X: and subshells all around, and the (unescaped) backslash will not be +?X: pertained in the final config.sh +?X: Note that -q is POSIX but to be sure, we also silence all output --RAM touch optdef.sh +if grep -q '\\' optdef.sh >/dev/null 2>&1; then + echo "Configure does not support \\ in -D or -U arguments" >&2 + exit 1 +fi + +: run the defines and the undefines, if any, but leave the file out there... . ./optdef.sh : create the posthint manipulation script and leave the file out there... ?X: this file will be perused by Oldconfig.U -- cgit v1.2.3 From 86eaf7a0609ca060dba9e79180bc84a7fbac2bef Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 19 Apr 2015 14:26:42 +0000 Subject: Blindly include for openat() and fstatat() tests. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@192 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_fstatat.U | 5 +---- mcon/U/d_openat.U | 5 +---- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/mcon/U/d_fstatat.U b/mcon/U/d_fstatat.U index b5af396..55412f7 100644 --- a/mcon/U/d_fstatat.U +++ b/mcon/U/d_fstatat.U @@ -7,7 +7,7 @@ ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_fstatat: Trylink cat i_fcntl i_sysstat +?MAKE:d_fstatat: Trylink cat i_sysstat ?MAKE: -pick add $@ %< ?S:d_fstatat: ?S: This variable conditionally defines HAS_FSTATAT if fstatat() is @@ -25,10 +25,7 @@ : see if fstatat exists $cat >try.c < /* AT_* constants */ -#endif #ifdef I_SYS_STAT #include #endif diff --git a/mcon/U/d_openat.U b/mcon/U/d_openat.U index d7f8269..8565ee5 100644 --- a/mcon/U/d_openat.U +++ b/mcon/U/d_openat.U @@ -7,7 +7,7 @@ ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_openat: Trylink cat i_fcntl +?MAKE:d_openat: Trylink cat ?MAKE: -pick add $@ %< ?S:d_openat: ?S: This variable conditionally defines HAS_OPENAT if openat() is @@ -24,10 +24,7 @@ ?LINT:set d_openat : see if openat exists $cat >try.c < /* AT_* constants */ -#endif int main(void) { static int ret; -- cgit v1.2.3 From 65f959231ac694a610f5cb49e432d93ec879f1d6 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 19 Apr 2015 14:41:31 +0000 Subject: Unfortunately, the name length field in dirent is d_namlen, not d_namelen. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@193 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 +- mcon/U/d_dirent_d_namelen.U | 42 ------------------------------------------ mcon/U/d_dirent_d_namlen.U | 42 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 43 insertions(+), 43 deletions(-) delete mode 100644 mcon/U/d_dirent_d_namelen.U create mode 100644 mcon/U/d_dirent_d_namlen.U diff --git a/MANIFEST b/MANIFEST index e64cc04..ef85866 100644 --- a/MANIFEST +++ b/MANIFEST @@ -204,7 +204,7 @@ mcon/U/d_debugging.U Conditionally defines -DDEBUGGING mcon/U/d_deflate.U Do we have zlib's deflate()? mcon/U/d_devpoll.U Can we use /dev/poll? mcon/U/d_difftime.U Do we have difftime()? -mcon/U/d_dirent_d_namelen.U Does struct dirent has a member d_namelen? +mcon/U/d_dirent_d_namlen.U Does struct dirent has a member d_namlen? mcon/U/d_dirent_d_type.U Does struct dirent has a member d_type? mcon/U/d_dirfd.U Do we have dirfd()? mcon/U/d_dladdr.U Do we have dladdr()? diff --git a/mcon/U/d_dirent_d_namelen.U b/mcon/U/d_dirent_d_namelen.U deleted file mode 100644 index 48361a6..0000000 --- a/mcon/U/d_dirent_d_namelen.U +++ /dev/null @@ -1,42 +0,0 @@ -?RCS: -?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: -?RCS: You may redistribute only under the terms of the Artistic License, -?RCS: as specified in the README file that comes with the distribution. -?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic License; a copy of which may be found at the root -?RCS: of the source tree for dist 4.0. -?RCS: -?MAKE:d_dirent_d_namelen: Trylink cat i_dirent -?MAKE: -pick add $@ %< -?S:d_dirent_d_namelen: -?S: This variable conditionally defines the HAS_DIRENT_D_NAMELEN symbol, -?S: which indicates to the C program that struct dirent has an -?S: integer member d_namelen. Better check for HAS_DIRENT_D_NAMELEN than -?S: DIRNAMLEN since the latter has a weaker test not involving compilation. -?S:. -?C:HAS_DIRENT_D_NAMELEN: -?C: This symbol, if defined, indicates that struct dirent has an -?C: integer member d_namelen to hold the actual string length of d_name. -?C:. -?H:#$d_dirent_d_namelen HAS_DIRENT_D_NAMELEN /**/ -?H:. -?LINT:set d_dirent_d_namelen -: check whether struct dirent has a member d_namelen. -$cat >try.c < -#$i_dirent I_DIRENT -#ifdef I_DIRENT -#include -#endif -int main(void) -{ - static struct dirent dir_entry; - dir_entry.d_namelen |= 1; - return 0; -} -EOC -cyn="whether struct dirent has a d_namelen member" -set d_dirent_d_namelen -eval $trylink - diff --git a/mcon/U/d_dirent_d_namlen.U b/mcon/U/d_dirent_d_namlen.U new file mode 100644 index 0000000..00fdfb2 --- /dev/null +++ b/mcon/U/d_dirent_d_namlen.U @@ -0,0 +1,42 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_dirent_d_namlen: Trylink cat i_dirent +?MAKE: -pick add $@ %< +?S:d_dirent_d_namlen: +?S: This variable conditionally defines the HAS_DIRENT_D_NAMLEN symbol, +?S: which indicates to the C program that struct dirent has an +?S: integer member d_namlen. Better check for HAS_DIRENT_D_NAMLEN than +?S: DIRNAMLEN since the latter has a weaker test not involving compilation. +?S:. +?C:HAS_DIRENT_D_NAMLEN: +?C: This symbol, if defined, indicates that struct dirent has an +?C: integer member d_namlen to hold the actual string length of d_name. +?C:. +?H:#$d_dirent_d_namlen HAS_DIRENT_D_NAMLEN /**/ +?H:. +?LINT:set d_dirent_d_namlen +: check whether struct dirent has a member d_namlen. +$cat >try.c < +#$i_dirent I_DIRENT +#ifdef I_DIRENT +#include +#endif +int main(void) +{ + static struct dirent dir_entry; + dir_entry.d_namlen |= 1; + return 0; +} +EOC +cyn="whether struct dirent has a d_namlen member" +set d_dirent_d_namlen +eval $trylink + -- cgit v1.2.3 From b623241f9c8eeb256d65459eff3b9bef65d9d903 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Fri, 24 Apr 2015 13:02:27 +0000 Subject: Fixed compilation unit for fdopendir() test. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@194 2592e710-e01b-42a5-8df0-11608a6cc53d --- mcon/U/d_fdopendir.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_fdopendir.U b/mcon/U/d_fdopendir.U index 585325a..02a0ddc 100644 --- a/mcon/U/d_fdopendir.U +++ b/mcon/U/d_fdopendir.U @@ -33,7 +33,7 @@ int main(void) { static DIR *d; d = fdopendir(0); - return NULL == d; + return (DIR *) 0 == d; } EOC cyn=fdopendir -- cgit v1.2.3 From 28af4f2f25b66177810efaa1010e541ca5498dfb Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Mon, 27 Apr 2015 21:30:17 +0000 Subject: Fixed CommonSubdirsRule() to extend double quotes surrounding $(VERB). This is necessary for the new install-strip target which sets VERB to a string containing parentheses, and we do not want the shell to choke on them. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@195 2592e710-e01b-42a5-8df0-11608a6cc53d --- jmake/files/Jmake.rules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jmake/files/Jmake.rules b/jmake/files/Jmake.rules index ab46f1e..21b37e7 100644 --- a/jmake/files/Jmake.rules +++ b/jmake/files/Jmake.rules @@ -1206,7 +1206,7 @@ subdirs: @@\ @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ @@\ for i in dirs ;\ @@\ do \ @@\ - (cd $$i ; echo $(VERB) "in $(DIR)$$i..."; \ @@\ + (cd $$i ; echo "$(VERB) in $(DIR)$$i..."; \ @@\ $(MAKE) $(MFLAGS) $(FLAGS) $(TARGET)) || exit 1; \ @@\ done -- cgit v1.2.3 From c56ef92ea3192d4e3fcc28cfab827741f0603b70 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sun, 1 Nov 2015 14:35:37 +0000 Subject: Added metaconfig test for pipe2(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@196 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_pipe.U | 2 +- mcon/U/d_pipe2.U | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 mcon/U/d_pipe2.U diff --git a/MANIFEST b/MANIFEST index ef85866..3308dda 100644 --- a/MANIFEST +++ b/MANIFEST @@ -332,6 +332,7 @@ mcon/U/d_pause.U Do we have pause()? mcon/U/d_perror.U Do we have perror()? mcon/U/d_pidcheck.U Is kill(pid, 0) allowed for PID checks? mcon/U/d_pipe.U Do we have pipe()? +mcon/U/d_pipe2.U Do we have pipe2()? mcon/U/d_poll.U Do we have poll()? mcon/U/d_popen.U Do we have popen()? mcon/U/d_portable.U How portable do we want to be? diff --git a/mcon/U/d_pipe.U b/mcon/U/d_pipe.U index 634bd24..2aa3b51 100644 --- a/mcon/U/d_pipe.U +++ b/mcon/U/d_pipe.U @@ -21,7 +21,7 @@ ?S: indicates to the C program that the pipe() routine is available ?S: to create an inter-process channel. ?S:. -?C:HAS_PIPE : +?C:HAS_PIPE: ?C: This symbol, if defined, indicates that the pipe routine is ?C: available to create an inter-process channel. ?C:. diff --git a/mcon/U/d_pipe2.U b/mcon/U/d_pipe2.U new file mode 100644 index 0000000..df03115 --- /dev/null +++ b/mcon/U/d_pipe2.U @@ -0,0 +1,46 @@ +?RCS: +?RCS: Copyright (c) 2015, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_pipe2: Trylink cat i_unistd i_sysfile +?MAKE: -pick add $@ %< +?S:d_pipe2: +?S: This variable conditionally defines the HAS_PIPE2 symbol, which +?S: indicates to the C program that the pipe2() routine is available +?S: to create an inter-process channel with some flags. +?S:. +?C:HAS_PIPE2: +?C: This symbol, if defined, indicates that the pipe routine is +?C: available to create an inter-process channel with O_CLOEXEC or +?C: O_NONBLOCK flags. +?C:. +?H:#$d_pipe2 HAS_PIPE2 /**/ +?H:. +?LINT:set d_pipe2 +: see if pipe2 exists +$cat >try.c < +#endif +#ifdef I_SYS_FILE +#include /* For O_* constants */ +#endif +#include /* For O_* constants */ +int main(void) +{ + static int fds[2], ret; + ret |= pipe2(fds, O_CLOEXEC | O_NONBLOCK); + return ret ? 0 : 1; +} +EOC +cyn=pipe2 +set d_pipe2 +eval $trylink + -- cgit v1.2.3 From fdd2067601eea3caa590a4f5e2d8878005db793a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 14 Nov 2015 15:04:42 +0000 Subject: Added 6 new units. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@197 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 6 ++++++ mcon/U/d_clearenv.U | 38 ++++++++++++++++++++++++++++++++++++++ mcon/U/d_getprogname.U | 40 ++++++++++++++++++++++++++++++++++++++++ mcon/U/d_proginvocname.U | 40 ++++++++++++++++++++++++++++++++++++++++ mcon/U/d_setenv.U | 38 ++++++++++++++++++++++++++++++++++++++ mcon/U/d_setprogname.U | 40 ++++++++++++++++++++++++++++++++++++++++ mcon/U/d_unsetenv.U | 38 ++++++++++++++++++++++++++++++++++++++ 7 files changed, 240 insertions(+) create mode 100644 mcon/U/d_clearenv.U create mode 100644 mcon/U/d_getprogname.U create mode 100644 mcon/U/d_proginvocname.U create mode 100644 mcon/U/d_setenv.U create mode 100644 mcon/U/d_setprogname.U create mode 100644 mcon/U/d_unsetenv.U diff --git a/MANIFEST b/MANIFEST index 3308dda..6bb7092 100644 --- a/MANIFEST +++ b/MANIFEST @@ -189,6 +189,7 @@ mcon/U/d_chown.U Do we have chown()? mcon/U/d_chroot.U Do we have chroot()? mcon/U/d_chsize.U Size of a char mcon/U/d_ckeypad.U Do we have the curses keypad()? +mcon/U/d_clearenv.U Do we have clearenv()? mcon/U/d_clock_getres.U Do we have clock_getres()? mcon/U/d_clock_gettime.U Do we have clock_gettime()? mcon/U/d_closedir.U Do we have closedir()? @@ -258,6 +259,7 @@ mcon/U/d_getpgrp.U Do we have getpgrp()? mcon/U/d_getpgrp2.U Do we have getpgrp2()? (DG/UX) mcon/U/d_getppid.U Do we have getppid()? mcon/U/d_getprior.U Do we have getpriority()? +mcon/U/d_getprogname.U Do we have getprogname()? mcon/U/d_getpwent.U How is passwd info gotten? mcon/U/d_getrlimit.U Do we have getrlimit()? mcon/U/d_gettext.U Checks whether gettext() is available @@ -340,6 +342,7 @@ mcon/U/d_posix_fadvise.U Do we have posix_fadvise()? mcon/U/d_posix_memalign.U Do we have posix_memalign()? mcon/U/d_pread.U Do we have pread()? mcon/U/d_preadv.U Do we have preadv()? +mcon/U/d_proginvocname.U Do we have program_invocation_name variables? mcon/U/d_psignal.U Do we have psignal()? mcon/U/d_ptattr_setstack.U Do we have pthread_attr_setstack()? mcon/U/d_pwrite.U Do we have pwrite()? @@ -373,6 +376,7 @@ mcon/U/d_semop.U Do we have semop()? mcon/U/d_sendfile.U Do we have sendfile()? mcon/U/d_sendmsg.U Do we have sendmsg()? mcon/U/d_setegid.U Do we have setegid()? +mcon/U/d_setenv.U Do we have setenv()? mcon/U/d_seteuid.U Do we have seteuid()? mcon/U/d_setgrps.U Do we have setgroups()? mcon/U/d_setlnbuf.U Do we have setlinebuf()? @@ -382,6 +386,7 @@ mcon/U/d_setpgrp.U Do we have setpgrp()? mcon/U/d_setpgrp2.U Do we have setpgrp2()? (DG/UX) mcon/U/d_setprior.U Do we have setpriority()? mcon/U/d_setproctitle.U Do we have setproctitle()? +mcon/U/d_setprogname.U Do we have setprogname()? mcon/U/d_setregid.U Do we have setregid()? mcon/U/d_setreuid.U Do we have setreuid()? mcon/U/d_setrgid.U Do we have setrgid()? @@ -453,6 +458,7 @@ mcon/U/d_uctx_mctx.U Do we have a uc_mcontext field in struct ucontext? mcon/U/d_uctx_mctx_gregs.U Do we have uc_mcontext.gregs[] in struct ucontext? mcon/U/d_ulimit.U Do we have ulimit()? mcon/U/d_umask.U Do we have umask()? +mcon/U/d_unsetenv.U Do we have unsetenv()? mcon/U/d_usendir.U Use our own ndir routines? mcon/U/d_usleep.U Do we have usleep()? mcon/U/d_uwait.U Is there a 'union wait' declaration around here? diff --git a/mcon/U/d_clearenv.U b/mcon/U/d_clearenv.U new file mode 100644 index 0000000..d8e892f --- /dev/null +++ b/mcon/U/d_clearenv.U @@ -0,0 +1,38 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_clearenv: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_clearenv: +?S: This variable conditionally defines the HAS_CLEARENV +?S: symbol, which indicates to the C program that clearenv() +?S: is available to clear the environment. +?S:. +?C:HAS_CLEARENV: +?C: This symbol is defined when clearenv() is there to clear the +?C: environment. +?C:. +?H:#$d_clearenv HAS_CLEARENV +?H:. +?LINT: set d_clearenv +: do we have clearenv? +$cat >try.c < +#endif +int main(void) +{ + return clearenv(); +} +EOC +cyn=clearenv +set d_clearenv +eval $trylink + diff --git a/mcon/U/d_getprogname.U b/mcon/U/d_getprogname.U new file mode 100644 index 0000000..a5a6175 --- /dev/null +++ b/mcon/U/d_getprogname.U @@ -0,0 +1,40 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getprogname: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_getprogname: +?S: This variable conditionally defines the HAS_GETPROGNAME +?S: symbol, which indicates to the C program that getprogname() +?S: is available to get the program name. +?S:. +?C:HAS_GETPROGNAME: +?C: This symbol is defined when getprogname() is there to get the +?C: program name. +?C:. +?H:#$d_getprogname HAS_GETPROGNAME +?H:. +?LINT: set d_getprogname +: can we use getprogname? +$cat >try.c < +#$i_stdlib I_STDLIB +#ifdef I_STDLIB +#include +#endif +int main(void) +{ + printf("%s\n", getprogname()); + return 0; +} +EOC +cyn=getprogname +set d_getprogname +eval $trylink + diff --git a/mcon/U/d_proginvocname.U b/mcon/U/d_proginvocname.U new file mode 100644 index 0000000..1ebd177 --- /dev/null +++ b/mcon/U/d_proginvocname.U @@ -0,0 +1,40 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_proginvocname: Trylink cat +?MAKE: -pick add $@ %< +?S:d_proginvocname: +?S: This variable conditionally defines the HAS_PROGRAM_INVOCATION_NAME +?S: symbol, which indicates to the C program that the two variables +?S: program_invocation_name and program_invocation_short_name are set +?S: at startup time. +?S:. +?C:HAS_PROGRAM_INVOCATION_NAME: +?C: This symbol is defined when the C startup sets the two variables +?C: program_invocation_name and program_invocation_short_name. To get +?C: these definitions, must be included with __USE_GNU defined. +?C:. +?H:#$d_proginvocname HAS_PROGRAM_INVOCATION_NAME +?H:. +?LINT: set d_proginvocname +: do we have the program_invocation_name variable? +$cat >try.c < +#define __USE_GNU +#include +int main(void) +{ + printf("%s\n%s\n", program_invocation_name, program_invocation_short_name); + return 0; +} +EOC +cyn="whether C startup sets program_invocation_name" +set d_proginvocname +eval $trylink + diff --git a/mcon/U/d_setenv.U b/mcon/U/d_setenv.U new file mode 100644 index 0000000..9fcfd52 --- /dev/null +++ b/mcon/U/d_setenv.U @@ -0,0 +1,38 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_setenv: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_setenv: +?S: This variable conditionally defines the HAS_SETENV +?S: symbol, which indicates to the C program that setenv() +?S: is available to change or add an environment variable. +?S:. +?C:HAS_SETENV: +?C: This symbol is defined when setenv() is available to change or +?C: add an environment variable. +?C:. +?H:#$d_setenv HAS_SETENV +?H:. +?LINT: set d_setenv +: do we have setenv? +$cat >try.c < +#endif +int main(void) +{ + return setenv("foo", "bar", 1); +} +EOC +cyn=setenv +set d_setenv +eval $trylink + diff --git a/mcon/U/d_setprogname.U b/mcon/U/d_setprogname.U new file mode 100644 index 0000000..0e53fdb --- /dev/null +++ b/mcon/U/d_setprogname.U @@ -0,0 +1,40 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_setprogname: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_setprogname: +?S: This variable conditionally defines the HAS_SETPROGNAME +?S: symbol, which indicates to the C program that setprogname() +?S: is available to set the program name. +?S:. +?C:HAS_SETPROGNAME: +?C: This symbol is defined when setprogname() is there to set the +?C: program name. +?C:. +?H:#$d_setprogname HAS_SETPROGNAME +?H:. +?LINT: set d_setprogname +: can we use setprogname? +$cat >try.c < +#$i_stdlib I_STDLIB +#ifdef I_STDLIB +#include +#endif +int main(void) +{ + setprogname("test"); + return 0; +} +EOC +cyn=setprogname +set d_setprogname +eval $trylink + diff --git a/mcon/U/d_unsetenv.U b/mcon/U/d_unsetenv.U new file mode 100644 index 0000000..8fcd511 --- /dev/null +++ b/mcon/U/d_unsetenv.U @@ -0,0 +1,38 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_unsetenv: Trylink cat i_stdlib +?MAKE: -pick add $@ %< +?S:d_unsetenv: +?S: This variable conditionally defines the HAS_UNSETENV +?S: symbol, which indicates to the C program that unsetenv() +?S: is available to delete an environment variable. +?S:. +?C:HAS_UNSETENV: +?C: This symbol is defined when unsetenv() is available to delete +?C: an environment variable. +?C:. +?H:#$d_unsetenv HAS_UNSETENV +?H:. +?LINT: set d_unsetenv +: do we have unsetenv? +$cat >try.c < +#endif +int main(void) +{ + return unsetenv("foo"); +} +EOC +cyn=unsetenv +set d_unsetenv +eval $trylink + -- cgit v1.2.3 From 1cd06144d77bcec60b316766e20f2111ea0e6c5a Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Sat, 14 Nov 2015 15:06:46 +0000 Subject: Regenarated Configure with the newest units. git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@198 2592e710-e01b-42a5-8df0-11608a6cc53d --- Configure | 45 +++++++++++++++++++++++++++++++++++---------- 1 file changed, 35 insertions(+), 10 deletions(-) diff --git a/Configure b/Configure index f27fe64..40a347d 100755 --- a/Configure +++ b/Configure @@ -14,11 +14,11 @@ # Note: this Configure script was generated automatically. Rather than # working with this copy of Configure, you may wish to get metaconfig. # The dist package (which contains metaconfig) is available via SVN: -# svn co https://svn.sourceforge.net/svnroot/dist/trunk/dist +# svn co https://svn.code.sf.net/p/dist/code/trunk/dist -# $Id: Head.U 41 2010-11-28 00:21:26Z rmanfredi $ +# $Id: Head.U 167 2013-05-08 17:58:00Z rmanfredi $ # -# Generated on Tue Feb 7 19:02:16 RST 2012 [metaconfig 3.5-123] +# Generated on Sat Nov 14 16:05:58 CET 2015 [metaconfig 3.5-197] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-197." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -787,8 +788,13 @@ case "$silent" in true) exec 1>/dev/null;; esac -: run the defines and the undefines, if any, but leave the file out there... touch optdef.sh +if grep -q '\\' optdef.sh >/dev/null 2>&1; then + echo "Configure does not support \\ in -D or -U arguments" >&2 + exit 1 +fi + +: run the defines and the undefines, if any, but leave the file out there... . ./optdef.sh : create the posthint manipulation script and leave the file out there... touch posthint.sh @@ -1620,6 +1626,7 @@ EOSC : determine whether symbolic links are supported echo " " $rm -f blurfl sym +$touch blurfl if $ln -s blurfl sym > /dev/null 2>&1 && $test -f sym; then echo "Symbolic links are supported." >&4 lns="$ln -s" @@ -2136,6 +2143,7 @@ esac saved_osname="$osname" saved_osvers="$osvers" +saved_libswanted="$libswanted" tmp_n="$n" tmp_c="$c" tmp_sh="$sh" @@ -2196,6 +2204,12 @@ osvers="$saved_osvers" n="$tmp_n" c="$tmp_c" +case "$libswanted" in +"$saved_libswanted") ;; +*) libs='';; +esac +libswanted="$saved_libswanted" + . ./checkcc case "$targetarch" in '') ;; @@ -3314,9 +3328,19 @@ your organization... EOM cont=x while test "$cont"; do + case "$MAILDOMAIN" in + '') + if $test -s /etc/mailname; then + maildomain=`$cat /etc/mailname` + else + maildomain="$myhostname$mydomain" + fi + ;; + *) maildomain="$MAILDOMAIN";; + esac case "$cf_email" in - '') dflt="$cf_by@$myhostname$mydomain";; - *) dflt="$cf_email";; + '') dflt="$cf_by@$maildomain";; + *) dflt="$cf_email";; esac rp='What is your e-mail address?' . ./myread @@ -3675,6 +3699,7 @@ case "$optimize" in 'none') optimize=" ";; esac + dflt='' : We will not override a previous value, but we might want to : augment a hint file @@ -3868,7 +3893,7 @@ rmlist="$rmlist pdp11" : coherency check echo " " echo "Checking your choice of C compiler and flags for coherency..." >&4 -set X $cc $optimize $ccflags $ldflags -o try try.c +set X $cc $optimize $pthread $ccflags $ldflags -o try try.c shift $cat >try.msg < Date: Fri, 27 Nov 2015 23:00:07 +0000 Subject: Added checks for getpwnam() and getpwuid(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@199 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 2 ++ mcon/U/d_getpwnam.U | 38 ++++++++++++++++++++++++++++++++++++++ mcon/U/d_getpwuid.U | 38 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 78 insertions(+) create mode 100644 mcon/U/d_getpwnam.U create mode 100644 mcon/U/d_getpwuid.U diff --git a/MANIFEST b/MANIFEST index 6bb7092..c32b89b 100644 --- a/MANIFEST +++ b/MANIFEST @@ -261,6 +261,8 @@ mcon/U/d_getppid.U Do we have getppid()? mcon/U/d_getprior.U Do we have getpriority()? mcon/U/d_getprogname.U Do we have getprogname()? mcon/U/d_getpwent.U How is passwd info gotten? +mcon/U/d_getpwnam.U Do we have getpwnam()? +mcon/U/d_getpwuid.U Do we have getpwuid()? mcon/U/d_getrlimit.U Do we have getrlimit()? mcon/U/d_gettext.U Checks whether gettext() is available mcon/U/d_gettext.U Do we have gettext()? diff --git a/mcon/U/d_getpwnam.U b/mcon/U/d_getpwnam.U new file mode 100644 index 0000000..74d117a --- /dev/null +++ b/mcon/U/d_getpwnam.U @@ -0,0 +1,38 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getpwnam: Trylink cat +?MAKE: -pick add $@ %< +?S:d_getpwnam: +?S: This variable conditionally defines the HAS_GETPWNAM symbol, which +?S: indicates to the C program that it can use the getpwnam() routine +?S: to get the /etc/passwd structure entries for given user name. +?S:. +?C:HAS_GETPWNAM: +?C: This symbol, if defined, indicates that the getpwnam() routine +?C: is available to get the /etc/passwd structure entries for given +?C: user name. +?C:. +?H:#$d_getpwnam HAS_GETPWNAM /**/ +?H:. +?LINT:set d_getpwnam +: see if there is a getpwnam +$cat >try.c < +int main(void) +{ + struct passwd pw; + pw = *getpwnam("foo"); + return pw.pw_name ? 0 : 1; +} +EOC +cyn=getpwnam +set d_getpwnam +eval $trylink + diff --git a/mcon/U/d_getpwuid.U b/mcon/U/d_getpwuid.U new file mode 100644 index 0000000..8c49ea3 --- /dev/null +++ b/mcon/U/d_getpwuid.U @@ -0,0 +1,38 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_getpwuid: Trylink cat +?MAKE: -pick add $@ %< +?S:d_getpwuid: +?S: This variable conditionally defines the HAS_GETPWUID symbol, which +?S: indicates to the C program that it can use the getpwuid() routine +?S: to get the /etc/passwd structure entries for given user ID. +?S:. +?C:HAS_GETPWUID: +?C: This symbol, if defined, indicates that the getpwuid() routine +?C: is available to get the /etc/passwd structure entries for given +?C: user ID. +?C:. +?H:#$d_getpwuid HAS_GETPWUID /**/ +?H:. +?LINT:set d_getpwuid +: see if there is a getpwuid +$cat >try.c < +int main(void) +{ + struct passwd pw; + pw = *getpwuid(0); + return pw.pw_name ? 0 : 1; +} +EOC +cyn=getpwuid +set d_getpwuid +eval $trylink + -- cgit v1.2.3 From 06ffc150b88e0d491a06f437acc44ed199fac216 Mon Sep 17 00:00:00 2001 From: rmanfredi Date: Thu, 3 Dec 2015 22:16:07 +0000 Subject: Added check for bsearch(). git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@200 2592e710-e01b-42a5-8df0-11608a6cc53d --- MANIFEST | 1 + mcon/U/d_bsearch.U | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 mcon/U/d_bsearch.U diff --git a/MANIFEST b/MANIFEST index c32b89b..9a26ff3 100644 --- a/MANIFEST +++ b/MANIFEST @@ -173,6 +173,7 @@ mcon/U/d_bfd_lib.U Is the BFD library available? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? +mcon/U/d_bsearch.U Do we have bsearch()? mcon/U/d_built_bswap32.U Is __builtin_bswap32() available? mcon/U/d_built_bswap64.U Is __builtin_bswap64() available? mcon/U/d_built_clz.U Is __builtin_clz() available? diff --git a/mcon/U/d_bsearch.U b/mcon/U/d_bsearch.U new file mode 100644 index 0000000..17ac23a --- /dev/null +++ b/mcon/U/d_bsearch.U @@ -0,0 +1,39 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_bsearch: Trylink cat +?MAKE: -pick add $@ %< +?S:d_bsearch: +?S: This variable conditionally defines the HAS_BSEARCH symbol, which +?S: indicates to the C program that it can use the bsearch() routine +?S: to perform a binary search on a sorted array. +?S:. +?C:HAS_BSEARCH: +?C: This symbol, if defined, indicates that the bsearch() routine +?C: is available to perform a binary search on a sorted array. +?C:. +?H:#$d_bsearch HAS_BSEARCH /**/ +?H:. +?LINT:set d_bsearch +: see if there is a bsearch +$cat >try.c < +int mycmp(const void *a, const void *b) +{ + return (char *) a - (char *) b; +} +int main(int argc, char **argv) +{ + return NULL == bsearch("foo", argv, argc, sizeof argv[0], mycmp); +} +EOC +cyn=bsearch +set d_bsearch +eval $trylink + -- cgit v1.2.3 From d630f9662f4b77f37714212748c615b3566618c2 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Fri, 1 Apr 2016 11:39:19 +0200 Subject: Count amount of git revisions to compute a sub-version number, like SVN did. Pun on sub-version and SVN intended :-) The idea is to be able to mimic what SVN was doing by counting how much changes were made on the master branch to derive a "build number" and keep our legacy version numbering scheme for now. --- MANIFEST | 1 - bin/svn-revision | 8 ++++++-- revision.h | 7 ------- 3 files changed, 6 insertions(+), 10 deletions(-) delete mode 100644 revision.h diff --git a/MANIFEST b/MANIFEST index 9a26ff3..f15caea 100644 --- a/MANIFEST +++ b/MANIFEST @@ -752,4 +752,3 @@ pl/rcsargs.pl Perl library to expand rcs filename lists pl/snapshot.pl Perl library to parse RCS snapshot file pl/tilde.pl Perl library to perform ~name expansion pl/users.pl Perl library to parse users file -revision.h The current SVN revision number for dist diff --git a/bin/svn-revision b/bin/svn-revision index c698135..ea9db77 100755 --- a/bin/svn-revision +++ b/bin/svn-revision @@ -14,6 +14,10 @@ # Computes SVN current revision number, if possible, emitting it in # the form of a #define for C perusal. # +# On 2016-04-01, we switched to git so until we come up with a more elaborate +# scheme, the current version number is computed by counting the amount of +# commits made on the "master" branch. +# LC_ALL=C export LC_ALL @@ -28,8 +32,8 @@ else oldrev=`grep REVISION "$FILE" 2>/dev/null | head -n1 | cut -d' ' -f4` fi -if test -d "$TOP/.svn"; then - revnum=`svn info "$TOP" 2>/dev/null | grep '^Revision' | head -n1 | cut -d' ' -f2` +if test -d "$TOP/.git"; then + revnum=`git log --oneline master | wc -l` else revnum="$oldrev" # keep as is fi diff --git a/revision.h b/revision.h deleted file mode 100644 index c686a10..0000000 --- a/revision.h +++ /dev/null @@ -1,7 +0,0 @@ -/* - * THIS FILE IS AUTOMATICALLY GENERATED -- DO NOT EDIT - * - * Generated by ./bin/svn-revision. - */ - -#define REVISION "$Revision$" -- cgit v1.2.3 From 051a4f7fa0bd75693e986513585dcc1e0c42cd46 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Fri, 1 Apr 2016 11:45:20 +0200 Subject: Added .gitignore. --- .gitignore | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..281d4c2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,41 @@ +.config/ +*.bak +*.1 +Makefile +bin/manicheck +bin/manilist +bin/packinit +config.sh +install +jmake/Index +jmake/bindex +jmake/fixcpp +jmake/jmake +jmake/jmkmf +kit/kitpost +kit/kitsend +kit/makedist +kit/manifake +mcon/Glossary +mcon/makegloss +mcon/mconfig +mcon/metaconfig +mcon/metalint +mcon/metaxref +mcon/mlint +mcon/mxref +pat/pat +pat/patbase +pat/patcil +pat/patclean +pat/patcol +pat/patdiff +pat/patftp +pat/patindex +pat/patlog +pat/patmake +pat/patname +pat/patnotify +pat/patpost +pat/patsend +pat/patsnap -- cgit v1.2.3 From b76210c2ef58dc61e2c4731422f7fc44165b1159 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Fri, 1 Apr 2016 12:23:54 +0200 Subject: Added revision.h to .gitignore since it is no longer included but generated. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 281d4c2..103f8de 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,4 @@ pat/patnotify pat/patpost pat/patsend pat/patsnap +revision.h -- cgit v1.2.3 From f8528237b61e7b2bb4b5b5837391a550d4135511 Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Sat, 23 Apr 2016 11:43:25 +0100 Subject: Don't rely on directory order when locating units Without this change, it's more likely for different machines to produce a Configure script with spurious unit reorderings (especially if they're running different OSes). --- mcon/pl/locate.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/pl/locate.pl b/mcon/pl/locate.pl index ea7d03f..46c1078 100644 --- a/mcon/pl/locate.pl +++ b/mcon/pl/locate.pl @@ -122,7 +122,7 @@ sub units_path { print "Locating in $MC/$dir...\n" if $main'opt_v; @contents = readdir DIR; # Slurp the whole thing closedir DIR; # And close dir, ready for recursion - foreach (@contents) { + foreach (sort @contents) { next if $_ eq '.' || $_ eq '..'; if (/\.U$/) { # A unit, definitely ($unit_name) = /^(.*)\.U$/; -- cgit v1.2.3 From 6eb0900c6559e23d6409f4434dffdba33b9ecdd8 Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Sat, 23 Apr 2016 11:48:05 +0100 Subject: Fix incorrect invocation of Perl system builtin It doesn't default to $_, but this code apparently assumes it does. This doesn't seem to actually affect anything, because all the units I've encountered have only the "pick" pseudo-command in the actions of their "?MAKE:" sections. But I think it's worth fixing nonetheless. --- mcon/pl/order.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/pl/order.pl b/mcon/pl/order.pl index e6ef35a..1616beb 100644 --- a/mcon/pl/order.pl +++ b/mcon/pl/order.pl @@ -33,7 +33,7 @@ sub solve_dependencies { # Ignore conditional symbol request } else { chop; - system; + system $_; } } chdir($WD) || die "Can't chdir to $WD: $!.\n"; -- cgit v1.2.3 From 77e4271ceb24212cfd025be9ce880bdeb5a14013 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Sun, 22 May 2016 17:07:59 +0200 Subject: Remove trailing whitespace in meta-lines in units (#3) --- mcon/U/AAAAA.U | 6 +++--- mcon/U/Assert.U | 2 +- mcon/U/Begin.U | 4 ++-- mcon/U/Checkcc.U | 8 ++++---- mcon/U/Chk_MANI.U | 2 +- mcon/U/Chk_whoami.U | 4 ++-- mcon/U/Compile.U | 8 ++++---- mcon/U/Config_h.U | 14 +++++++------- mcon/U/Config_sh.U | 6 +++--- mcon/U/Configdir.U | 2 +- mcon/U/Cppsym.U | 8 ++++---- mcon/U/Cross.U | 4 ++-- mcon/U/Csym.U | 2 +- mcon/U/End.U | 6 +++--- mcon/U/Extract.U | 6 +++--- mcon/U/Extractall.U | 2 +- mcon/U/Filexp.U | 6 +++--- mcon/U/Findhdr.U | 2 +- mcon/U/Finish.U | 8 ++++---- mcon/U/Getfile.U | 12 ++++++------ mcon/U/Guess.U | 6 +++--- mcon/U/Head.U | 6 +++--- mcon/U/Inhdr.U | 2 +- mcon/U/Init.U | 4 ++-- mcon/U/Inlibc.U | 2 +- mcon/U/Instruct.U | 6 +++--- mcon/U/Loc.U | 8 ++++---- mcon/U/Loc_sed.U | 4 ++-- mcon/U/Magic_h.U | 4 ++-- mcon/U/MailAuthor.U | 2 +- mcon/U/MailList.U | 4 ++-- mcon/U/Mips.U | 2 +- mcon/U/Mkdirp.U | 6 +++--- mcon/U/Mksymlinks.U | 12 ++++++------ mcon/U/Myinit.U | 4 ++-- mcon/U/Myread.U | 8 ++++---- mcon/U/Nothing.U | 6 +++--- mcon/U/Null.U | 6 +++--- mcon/U/Obsol_h.U | 6 +++--- mcon/U/Obsol_sh.U | 6 +++--- mcon/U/Oldconfig.U | 6 +++--- mcon/U/Oldsym.U | 6 +++--- mcon/U/Options.U | 8 ++++---- mcon/U/Prefixit.U | 2 +- mcon/U/Prefixup.U | 2 +- mcon/U/Rcs.U | 8 ++++---- mcon/U/Setvar.U | 2 +- mcon/U/Signal.U | 8 ++++---- mcon/U/Tr.U | 4 ++-- mcon/U/Trylink.U | 2 +- mcon/U/Typedef.U | 2 +- mcon/U/Unix.U | 2 +- mcon/U/Warn.U | 4 ++-- mcon/U/Warn_v7EXT.U | 8 ++++---- mcon/U/Warn_v7ND.U | 8 ++++---- mcon/U/Whoa.U | 8 ++++---- mcon/U/abortsig.U | 2 +- mcon/U/active.U | 2 +- mcon/U/afs.U | 6 +++--- mcon/U/alignbytes.U | 2 +- mcon/U/archlib.U | 6 +++--- mcon/U/archname.U | 2 +- mcon/U/baserev.U | 2 +- mcon/U/basicshell.U | 2 +- mcon/U/bin.U | 2 +- mcon/U/bitpbyte.U | 2 +- mcon/U/byteorder.U | 2 +- mcon/U/cc.U | 4 ++-- mcon/U/ccflags.U | 2 +- mcon/U/cf_email.U | 4 ++-- mcon/U/cf_name.U | 4 ++-- mcon/U/cf_who.U | 2 +- mcon/U/charorder.U | 2 +- mcon/U/charsize.U | 2 +- mcon/U/contains.U | 2 +- mcon/U/cpp_stuff.U | 2 +- mcon/U/cpp_trad.U | 2 +- mcon/U/cppfilecom.U | 2 +- mcon/U/cppstdin.U | 2 +- mcon/U/d_NOFILE.U | 2 +- mcon/U/d_NeWS.U | 2 +- mcon/U/d_PORTAR.U | 2 +- mcon/U/d_SHM_MAC.U | 2 +- mcon/U/d_access.U | 2 +- mcon/U/d_alarm.U | 2 +- mcon/U/d_attribut.U | 2 +- mcon/U/d_backtrace.U | 2 +- mcon/U/d_bcmp.U | 2 +- mcon/U/d_bcopy.U | 2 +- mcon/U/d_bfd_lib.U | 2 +- mcon/U/d_brokstat.U | 2 +- mcon/U/d_bsdjmp.U | 2 +- mcon/U/d_bsearch.U | 2 +- mcon/U/d_byacc.U | 4 ++-- mcon/U/d_bzero.U | 2 +- mcon/U/d_casti32.U | 2 +- mcon/U/d_castneg.U | 2 +- mcon/U/d_cbrt.U | 2 +- mcon/U/d_charsprf.U | 2 +- mcon/U/d_chown.U | 2 +- mcon/U/d_chroot.U | 2 +- mcon/U/d_chsize.U | 2 +- mcon/U/d_ckeypad.U | 2 +- mcon/U/d_clock_getres.U | 2 +- mcon/U/d_clock_gettime.U | 2 +- mcon/U/d_closedir.U | 2 +- mcon/U/d_const.U | 2 +- mcon/U/d_crypt.U | 4 ++-- mcon/U/d_csh.U | 4 ++-- mcon/U/d_ctermid.U | 2 +- mcon/U/d_cuserid.U | 2 +- mcon/U/d_datastart_symbol.U | 2 +- mcon/U/d_dbl_dig.U | 2 +- mcon/U/d_debugging.U | 2 +- mcon/U/d_difftime.U | 2 +- mcon/U/d_dirfd.U | 2 +- mcon/U/d_dladdr.U | 2 +- mcon/U/d_dlerror.U | 2 +- mcon/U/d_dliterphdr.U | 2 +- mcon/U/d_dlopen.U | 2 +- mcon/U/d_dosuid.U | 4 ++-- mcon/U/d_drem.U | 2 +- mcon/U/d_dup2.U | 2 +- mcon/U/d_end_symbol.U | 2 +- mcon/U/d_eofpipe.U | 2 +- mcon/U/d_etext_symbol.U | 2 +- mcon/U/d_euc2jis.U | 2 +- mcon/U/d_fchdir.U | 2 +- mcon/U/d_fchmod.U | 2 +- mcon/U/d_fchown.U | 2 +- mcon/U/d_fcntl.U | 2 +- mcon/U/d_fd_set.U | 2 +- mcon/U/d_fdatasync.U | 2 +- mcon/U/d_fdopendir.U | 2 +- mcon/U/d_ffs.U | 2 +- mcon/U/d_fgetpos.U | 2 +- mcon/U/d_flexfnam.U | 2 +- mcon/U/d_flock.U | 2 +- mcon/U/d_fmod.U | 2 +- mcon/U/d_fork.U | 2 +- mcon/U/d_fsetpos.U | 2 +- mcon/U/d_fstatat.U | 2 +- mcon/U/d_fsync.U | 2 +- mcon/U/d_ftime.U | 2 +- mcon/U/d_ftrncate.U | 2 +- mcon/U/d_gconvert.U | 4 ++-- mcon/U/d_getcontext.U | 2 +- mcon/U/d_getgrps.U | 2 +- mcon/U/d_gethbynm.U | 2 +- mcon/U/d_gethent.U | 2 +- mcon/U/d_gethid.U | 2 +- mcon/U/d_gethname.U | 2 +- mcon/U/d_getlogin.U | 2 +- mcon/U/d_getopt.U | 2 +- mcon/U/d_getpagsz.U | 2 +- mcon/U/d_getpgid.U | 4 ++-- mcon/U/d_getpgrp.U | 2 +- mcon/U/d_getpgrp2.U | 2 +- mcon/U/d_getppid.U | 2 +- mcon/U/d_getprior.U | 2 +- mcon/U/d_getpwent.U | 2 +- mcon/U/d_getpwnam.U | 2 +- mcon/U/d_getpwuid.U | 2 +- mcon/U/d_getrlimit.U | 2 +- mcon/U/d_getwd.U | 2 +- mcon/U/d_gnulibc.U | 6 +++--- mcon/U/d_group.U | 2 +- mcon/U/d_havetlib.U | 2 +- mcon/U/d_hidnet.U | 2 +- mcon/U/d_htonl.U | 2 +- mcon/U/d_ieee754.U | 2 +- mcon/U/d_inetaton.U | 2 +- mcon/U/d_inetd.U | 2 +- mcon/U/d_internet.U | 2 +- mcon/U/d_isascii.U | 4 ++-- mcon/U/d_itimer.U | 2 +- mcon/U/d_keepsig.U | 2 +- mcon/U/d_killpg.U | 2 +- mcon/U/d_link.U | 2 +- mcon/U/d_linuxstd.U | 2 +- mcon/U/d_locconv.U | 2 +- mcon/U/d_lockf.U | 2 +- mcon/U/d_lstat.U | 2 +- mcon/U/d_mblen.U | 2 +- mcon/U/d_mbstowcs.U | 2 +- mcon/U/d_mbtowc.U | 2 +- mcon/U/d_memalign.U | 2 +- mcon/U/d_memccpy.U | 2 +- mcon/U/d_memchr.U | 2 +- mcon/U/d_memcmp.U | 2 +- mcon/U/d_memcpy.U | 2 +- mcon/U/d_memmove.U | 2 +- mcon/U/d_mempcpy.U | 2 +- mcon/U/d_memset.U | 2 +- mcon/U/d_mkdir.U | 2 +- mcon/U/d_mkfifo.U | 4 ++-- mcon/U/d_mktime.U | 2 +- mcon/U/d_mmap.U | 2 +- mcon/U/d_msem_lck.U | 2 +- mcon/U/d_msg.U | 2 +- mcon/U/d_msgctl.U | 2 +- mcon/U/d_msgget.U | 2 +- mcon/U/d_msgrcv.U | 2 +- mcon/U/d_msgsnd.U | 2 +- mcon/U/d_msync.U | 2 +- mcon/U/d_munmap.U | 2 +- mcon/U/d_newsadm.U | 2 +- mcon/U/d_nice.U | 2 +- mcon/U/d_nolnbuf.U | 2 +- mcon/U/d_normsig.U | 2 +- mcon/U/d_open3.U | 2 +- mcon/U/d_openat.U | 2 +- mcon/U/d_passwd.U | 2 +- mcon/U/d_pathconf.U | 2 +- mcon/U/d_pause.U | 2 +- mcon/U/d_perror.U | 2 +- mcon/U/d_pidcheck.U | 2 +- mcon/U/d_pipe.U | 2 +- mcon/U/d_pipe2.U | 2 +- mcon/U/d_poll.U | 2 +- mcon/U/d_popen.U | 2 +- mcon/U/d_portable.U | 2 +- mcon/U/d_pread.U | 2 +- mcon/U/d_preadv.U | 2 +- mcon/U/d_psignal.U | 2 +- mcon/U/d_pwrite.U | 2 +- mcon/U/d_pwritev.U | 2 +- mcon/U/d_raster.U | 2 +- mcon/U/d_rdchk.U | 2 +- mcon/U/d_readdir.U | 2 +- mcon/U/d_readlink.U | 2 +- mcon/U/d_regcmp.U | 2 +- mcon/U/d_regcomp.U | 2 +- mcon/U/d_rename.U | 2 +- mcon/U/d_rmdir.U | 2 +- mcon/U/d_rusage.U | 2 +- mcon/U/d_safebcpy.U | 4 ++-- mcon/U/d_safemcpy.U | 2 +- mcon/U/d_sanemcmp.U | 2 +- mcon/U/d_sbrk.U | 2 +- mcon/U/d_scandir.U | 2 +- mcon/U/d_scannl.U | 2 +- mcon/U/d_sched_yield.U | 2 +- mcon/U/d_scorfl.U | 2 +- mcon/U/d_select.U | 2 +- mcon/U/d_sem.U | 2 +- mcon/U/d_semctl.U | 2 +- mcon/U/d_semget.U | 2 +- mcon/U/d_semop.U | 2 +- mcon/U/d_setegid.U | 2 +- mcon/U/d_seteuid.U | 2 +- mcon/U/d_setgrps.U | 2 +- mcon/U/d_setlnbuf.U | 2 +- mcon/U/d_setlocale.U | 2 +- mcon/U/d_setpgid.U | 2 +- mcon/U/d_setpgrp.U | 2 +- mcon/U/d_setpgrp2.U | 2 +- mcon/U/d_setprior.U | 2 +- mcon/U/d_setregid.U | 2 +- mcon/U/d_setreuid.U | 2 +- mcon/U/d_setrgid.U | 2 +- mcon/U/d_setrlimit.U | 2 +- mcon/U/d_setruid.U | 2 +- mcon/U/d_setsid.U | 2 +- mcon/U/d_sgndchr.U | 2 +- mcon/U/d_shm.U | 2 +- mcon/U/d_shmat.U | 4 ++-- mcon/U/d_shmctl.U | 2 +- mcon/U/d_shmdt.U | 2 +- mcon/U/d_shmget.U | 2 +- mcon/U/d_sigaction.U | 2 +- mcon/U/d_sigaltstack.U | 2 +- mcon/U/d_sigblock.U | 2 +- mcon/U/d_sighold.U | 2 +- mcon/U/d_siglist.U | 2 +- mcon/U/d_sigprocmask.U | 2 +- mcon/U/d_sigsetjmp.U | 2 +- mcon/U/d_sigsetmk.U | 2 +- mcon/U/d_sigvec.U | 2 +- mcon/U/d_sjis2jis.U | 2 +- mcon/U/d_socket.U | 2 +- mcon/U/d_speedopt.U | 2 +- mcon/U/d_stat.U | 2 +- mcon/U/d_statblks.U | 2 +- mcon/U/d_stdstdio.U | 2 +- mcon/U/d_strccmp.U | 4 ++-- mcon/U/d_strchr.U | 2 +- mcon/U/d_strcoll.U | 2 +- mcon/U/d_strcspn.U | 2 +- mcon/U/d_strctcpy.U | 2 +- mcon/U/d_strdup.U | 2 +- mcon/U/d_strerror.U | 2 +- mcon/U/d_strftime.U | 2 +- mcon/U/d_strstr.U | 2 +- mcon/U/d_strtod.U | 2 +- mcon/U/d_strtok.U | 2 +- mcon/U/d_strtol.U | 2 +- mcon/U/d_strtoul.U | 2 +- mcon/U/d_strxfrm.U | 2 +- mcon/U/d_su_chown.U | 2 +- mcon/U/d_symlink.U | 2 +- mcon/U/d_syscall.U | 2 +- mcon/U/d_sysconf.U | 2 +- mcon/U/d_syslog.U | 2 +- mcon/U/d_system.U | 2 +- mcon/U/d_table.U | 2 +- mcon/U/d_tcgtpgrp.U | 2 +- mcon/U/d_tcstpgrp.U | 2 +- mcon/U/d_time.U | 2 +- mcon/U/d_times.U | 2 +- mcon/U/d_tminsys.U | 2 +- mcon/U/d_truncate.U | 2 +- mcon/U/d_ttyname.U | 2 +- mcon/U/d_tzmin.U | 2 +- mcon/U/d_tzname.U | 2 +- mcon/U/d_ulimit.U | 2 +- mcon/U/d_umask.U | 2 +- mcon/U/d_usendir.U | 2 +- mcon/U/d_usleep.U | 2 +- mcon/U/d_uwait.U | 2 +- mcon/U/d_vfork.U | 2 +- mcon/U/d_voidsig.U | 2 +- mcon/U/d_volatile.U | 2 +- mcon/U/d_vprintf.U | 2 +- mcon/U/d_wait3.U | 2 +- mcon/U/d_wait4.U | 2 +- mcon/U/d_waitpid.U | 2 +- mcon/U/d_wcstombs.U | 2 +- mcon/U/d_wctomb.U | 2 +- mcon/U/d_wifstat.U | 2 +- mcon/U/d_xdrs.U | 2 +- mcon/U/defeditor.U | 2 +- mcon/U/doublesize.U | 2 +- mcon/U/ebcdic.U | 4 ++-- mcon/U/errnolist.U | 8 ++++---- mcon/U/etc.U | 2 +- mcon/U/fieldn.U | 2 +- mcon/U/filexp_path.U | 2 +- mcon/U/floatsize.U | 2 +- mcon/U/fpostype.U | 4 ++-- mcon/U/fpu.U | 2 +- mcon/U/gccvers.U | 4 ++-- mcon/U/gidtype.U | 2 +- mcon/U/groupstype.U | 10 +++++----- mcon/U/h_fcntl.U | 2 +- mcon/U/h_sysfile.U | 2 +- mcon/U/i_alloca.U | 2 +- mcon/U/i_arpainet.U | 2 +- mcon/U/i_db.U | 2 +- mcon/U/i_dbm.U | 4 ++-- mcon/U/i_dirent.U | 4 ++-- mcon/U/i_dld.U | 2 +- mcon/U/i_dlfcn.U | 2 +- mcon/U/i_execinfo.U | 2 +- mcon/U/i_fcntl.U | 2 +- mcon/U/i_float.U | 2 +- mcon/U/i_gdbm.U | 2 +- mcon/U/i_grp.U | 2 +- mcon/U/i_inttypes.U | 2 +- mcon/U/i_limits.U | 2 +- mcon/U/i_linux_netlink.U | 2 +- mcon/U/i_linux_rtnetlink.U | 2 +- mcon/U/i_locale.U | 2 +- mcon/U/i_malloc.U | 2 +- mcon/U/i_math.U | 2 +- mcon/U/i_memory.U | 4 ++-- mcon/U/i_mswsock.U | 2 +- mcon/U/i_ndbm.U | 2 +- mcon/U/i_neterrno.U | 4 ++-- mcon/U/i_niin.U | 2 +- mcon/U/i_poll.U | 2 +- mcon/U/i_pthread.U | 2 +- mcon/U/i_pwd.U | 2 +- mcon/U/i_regex.U | 2 +- mcon/U/i_sched.U | 2 +- mcon/U/i_sfio.U | 2 +- mcon/U/i_stddef.U | 2 +- mcon/U/i_stdlib.U | 2 +- mcon/U/i_string.U | 2 +- mcon/U/i_sysdir.U | 2 +- mcon/U/i_sysfile.U | 2 +- mcon/U/i_sysioctl.U | 2 +- mcon/U/i_sysmman.U | 2 +- mcon/U/i_sysndir.U | 2 +- mcon/U/i_sysparam.U | 2 +- mcon/U/i_syspoll.U | 2 +- mcon/U/i_sysresrc.U | 2 +- mcon/U/i_sysselct.U | 2 +- mcon/U/i_syssock.U | 2 +- mcon/U/i_sysstat.U | 2 +- mcon/U/i_systable.U | 2 +- mcon/U/i_systimeb.U | 2 +- mcon/U/i_systimes.U | 2 +- mcon/U/i_systwgcf.U | 2 +- mcon/U/i_systypes.U | 2 +- mcon/U/i_sysun.U | 2 +- mcon/U/i_syswait.U | 2 +- mcon/U/i_termio.U | 2 +- mcon/U/i_time.U | 2 +- mcon/U/i_ucontext.U | 2 +- mcon/U/i_unistd.U | 2 +- mcon/U/i_utime.U | 2 +- mcon/U/i_values.U | 2 +- mcon/U/i_varhdr.U | 2 +- mcon/U/i_vfork.U | 2 +- mcon/U/i_whoami.U | 2 +- mcon/U/i_winsock2.U | 2 +- mcon/U/i_ws2tcpip.U | 2 +- mcon/U/ilp.U | 2 +- mcon/U/inc.U | 2 +- mcon/U/install.U | 2 +- mcon/U/intsize.U | 2 +- mcon/U/ipc.U | 2 +- mcon/U/issymlink.U | 4 ++-- mcon/U/kernel.U | 2 +- mcon/U/lex.U | 2 +- mcon/U/lib.U | 2 +- mcon/U/libc.U | 4 ++-- mcon/U/libdbm.U | 2 +- mcon/U/libflex.U | 2 +- mcon/U/libnlist.U | 2 +- mcon/U/libnm.U | 2 +- mcon/U/libpth.U | 2 +- mcon/U/libs.U | 10 +++++----- mcon/U/libyacc.U | 2 +- mcon/U/lintlib.U | 2 +- mcon/U/lns.U | 4 ++-- mcon/U/locdist.U | 2 +- mcon/U/longsize.U | 2 +- mcon/U/lseektype.U | 4 ++-- mcon/U/maildir.U | 2 +- mcon/U/mailer.U | 2 +- mcon/U/mailfile.U | 2 +- mcon/U/make.U | 8 ++++---- mcon/U/mallocsrc.U | 2 +- mcon/U/man1dir.U | 4 ++-- mcon/U/man3dir.U | 6 +++--- mcon/U/manfmt.U | 2 +- mcon/U/mansrc.U | 2 +- mcon/U/mboxchar.U | 2 +- mcon/U/mkdep.U | 2 +- mcon/U/models.U | 2 +- mcon/U/modetype.U | 8 ++++---- mcon/U/myhostname.U | 2 +- mcon/U/n.U | 2 +- mcon/U/nametype.U | 2 +- mcon/U/nblock_io.U | 2 +- mcon/U/newslevel.U | 4 ++-- mcon/U/newslib.U | 2 +- mcon/U/newsspool.U | 2 +- mcon/U/nis.U | 2 +- mcon/U/nlist_pfx.U | 2 +- mcon/U/orderlib.U | 2 +- mcon/U/orgname.U | 2 +- mcon/U/packadmin.U | 2 +- mcon/U/package.U | 2 +- mcon/U/pager.U | 2 +- mcon/U/patchlevel.U | 2 +- mcon/U/perlpath.U | 2 +- mcon/U/pidtype.U | 4 ++-- mcon/U/pkgsrc.U | 2 +- mcon/U/prefix.U | 2 +- mcon/U/prefshell.U | 2 +- mcon/U/privlib.U | 2 +- mcon/U/prototype.U | 2 +- mcon/U/ptrsize.U | 2 +- mcon/U/randbits.U | 2 +- mcon/U/randfunc.U | 2 +- mcon/U/rcs_branch.U | 2 +- mcon/U/registers.U | 2 +- mcon/U/rootid.U | 2 +- mcon/U/sbrksmart.U | 2 +- mcon/U/sbrktype.U | 4 ++-- mcon/U/scriptdir.U | 2 +- mcon/U/selecttype.U | 6 +++--- mcon/U/sh.U | 6 +++--- mcon/U/shm_for.U | 2 +- mcon/U/sig_name.U | 18 +++++++++--------- mcon/U/sitearch.U | 2 +- mcon/U/sitelib.U | 4 ++-- mcon/U/sizetype.U | 6 +++--- mcon/U/so.U | 2 +- mcon/U/sockopt.U | 2 +- mcon/U/spitshell.U | 2 +- mcon/U/src.U | 2 +- mcon/U/ssizetype.U | 6 +++--- mcon/U/startperl.U | 2 +- mcon/U/startsh.U | 2 +- mcon/U/stdchar.U | 2 +- mcon/U/sunscanf.U | 2 +- mcon/U/sysman.U | 2 +- mcon/U/trnl.U | 4 ++-- mcon/U/uidtype.U | 4 ++-- mcon/U/usenm.U | 2 +- mcon/U/usesocks.U | 4 ++-- mcon/U/usrinc.U | 2 +- mcon/U/vaproto.U | 2 +- mcon/U/voidflags.U | 2 +- mcon/U/warnflags.U | 2 +- mcon/U/yacc.U | 2 +- mcon/files/Internal.U | 2 +- mcon/files/d_function.U | 2 +- mcon/files/dir.U | 2 +- mcon/files/file.U | 2 +- mcon/files/i_include.U | 2 +- mcon/files/keyword.U | 2 +- mcon/files/locate.U | 2 +- mcon/files/question.U | 2 +- mcon/files/rcshead.U | 2 +- mcon/files/shell.U | 2 +- mcon/files/type.U | 4 ++-- 511 files changed, 678 insertions(+), 678 deletions(-) diff --git a/mcon/U/AAAAA.U b/mcon/U/AAAAA.U index 890cd68..9869673 100644 --- a/mcon/U/AAAAA.U +++ b/mcon/U/AAAAA.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -25,12 +25,12 @@ ?RCS: Revision 3.0 1993/08/18 12:04:44 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: The purpose of this file is to supply the head of the Makefile created ?X: by metaconfig. For this reason it must be first in alphabetical order. ?X: The leading '+' in front of the unit name is a hint for metalint, since ?X: the use of that special unit name as a "made" unit is legitimate here. -?X: +?X: ?MAKE:+All: Finish ?X: ?X: Throughout the units, the following initials are used to identify comments: diff --git a/mcon/U/Assert.U b/mcon/U/Assert.U index ef43d59..76de54d 100644 --- a/mcon/U/Assert.U +++ b/mcon/U/Assert.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Begin.U b/mcon/U/Begin.U index d63c855..d987c46 100644 --- a/mcon/U/Begin.U +++ b/mcon/U/Begin.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -18,7 +18,7 @@ ?RCS: Revision 3.0.1.1 1994/10/31 09:32:20 ram ?RCS: patch44: created ?RCS: -?X: +?X: ?X: This file comes after option processing had been done and after all ?X: the default values have been set up. It marks the beginning of questions. ?X: It is important that Options be listed *after* Myinit to ensure that the diff --git a/mcon/U/Checkcc.U b/mcon/U/Checkcc.U index be9409c..3cae05c 100644 --- a/mcon/U/Checkcc.U +++ b/mcon/U/Checkcc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -9,11 +9,11 @@ ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: Copyright (c) 2000, Jarkko Hietaniemi -?RCS: -?X: +?RCS: +?X: ?X: This unit produces a bit of shell code that must be dotted in order ?X: to make quick check on whether the current C compiler is working. -?X: +?X: ?MAKE:Checkcc ccname ccversion: Myread Warn startsh cat contains test ?MAKE: -pick add $@ %< ?S:ccname: diff --git a/mcon/U/Chk_MANI.U b/mcon/U/Chk_MANI.U index 1631136..e991a1a 100644 --- a/mcon/U/Chk_MANI.U +++ b/mcon/U/Chk_MANI.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Chk_whoami.U b/mcon/U/Chk_whoami.U index ec42f1a..b002989 100644 --- a/mcon/U/Chk_whoami.U +++ b/mcon/U/Chk_whoami.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,7 +15,7 @@ ?X: ?X: This unit makes sure we don't try to include whoami.h if uname() exists. ?X: -?MAKE:Chk_whoami: d_uname i_whoami +?MAKE:Chk_whoami: d_uname i_whoami ?MAKE: -pick add $@ %< ?LINT:change i_whoami : weed out incompatibilities diff --git a/mcon/U/Compile.U b/mcon/U/Compile.U index 739efcd..417f9ec 100644 --- a/mcon/U/Compile.U +++ b/mcon/U/Compile.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -36,9 +36,9 @@ ?S: echo 'int main() { exit(0); }' > try.c ?S: set try ?S: if eval $compile; then -?S: echo "success" # and do whatever . . . +?S: echo "success" # and do whatever . . . ?S: else -?S: echo "failure" # and do whatever . . . +?S: echo "failure" # and do whatever . . . ?S: fi ?S: To add extra flags cc flags (e.g. -DWHATEVER) just put them ?S: in $*, e.g. @@ -48,7 +48,7 @@ ?S: This shell variable is used internally by Configure to provide ?S: a convenient shorthand for the typical compile command that you ?S: expect to work ok. It is the same as $compile, except we -?S: deliberately let the user see any error messages. +?S: deliberately let the user see any error messages. ?S:. : define a shorthand compile call compile=' diff --git a/mcon/U/Config_h.U b/mcon/U/Config_h.U index 5e61d09..8b8c657 100644 --- a/mcon/U/Config_h.U +++ b/mcon/U/Config_h.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -27,7 +27,7 @@ ?RCS: Revision 3.0 1993/08/18 12:04:47 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This file ends up producing the config_h.SH script, which is run to produce ?X: the config.h file. The file ./.Config_h below contains all the ?H: lines ?X: extracted out of all the units. Metaconfig itself adds the !GROK!THIS!. @@ -38,7 +38,7 @@ ?X: 'dot' is allowed within the file name, as it is part of the "extension" of ?X: the file. MS-DOG will not let you have two 'dots' because that would mean ?X: two "extensions". -?X: +?X: ?MAKE:Config_h: Id End Config_sh Obsol_h myuname cf_time cf_by package src ?MAKE: -pick c_h_weed $@ %< ?MAKE: -pick c_h_weed $@ ./Config_h @@ -78,16 +78,16 @@ echo "Extracting $CONFIG_H (with variable substitutions)" ?X: is provision here for #un-def, which is translated back into #undef after ?X: all original #undef have been processed. ?X: -?X: Previously, we changed all -?X: #undef FOO /**/ +?X: Previously, we changed all +?X: #undef FOO /**/ ?X: into -?X: /*#define FOO /**/ +?X: /*#define FOO /**/ ?X: The xlc compiler (available on IBM's AIX) complains that this is ?X: an illegal attempt to write a nested comment, and warns against it. ?X: There's apparently no way to shut the compiler up, either. ?X: This sed command from Hallvard B Furuseth ?X: changes it to -?X: /*#define FOO / **/ +?X: /*#define FOO / **/ sed <$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-def!#undef!' /* * This file was produced by running the config_h.SH script, which diff --git a/mcon/U/Config_sh.U b/mcon/U/Config_sh.U index 415fc0c..bb47b7b 100644 --- a/mcon/U/Config_sh.U +++ b/mcon/U/Config_sh.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -21,12 +21,12 @@ ?RCS: Revision 3.0 1993/08/18 12:04:48 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit ends up producing the config.sh script, which contains all the ?X: definitions figured out by Configure. The add.Config_sh command knows ?X: which variables need to be remembered. It also adds the EOT (ends the ?X: here document redirection with variable substitution). -?X: +?X: ?MAKE:Config_sh: cf_time cf_by test spitshell startsh myuname Myread \ End Obsol_sh Loc +d_portable package src cat sed ?MAKE: -pick add.Config_sh $@ %< diff --git a/mcon/U/Configdir.U b/mcon/U/Configdir.U index edc4316..fe81f25 100644 --- a/mcon/U/Configdir.U +++ b/mcon/U/Configdir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Cppsym.U b/mcon/U/Cppsym.U index ae80d94..8588b7e 100644 --- a/mcon/U/Cppsym.U +++ b/mcon/U/Cppsym.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: Cppsym.U,v $ ?RCS: Revision 3.0.1.5 1995/05/12 11:59:11 ram ?RCS: patch54: split awk command onto two lines for older awks (ADO) @@ -30,14 +30,14 @@ ?RCS: Revision 3.0 1993/08/18 12:04:50 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit produces a shell script called Cppsym, which can be used to ?X: determine whether any in a list of symbols is defined by the C compilation ?X: chain (C preprocessor symbols plus C compiler native ones). ?X: It can determine the status of any symbol, though the symbols in $al ?X: are more easily determined. If you want to add to $al you can do ?X: it in Myinit.U. -?X: +?X: ?MAKE:Cppsym ccsymbols cppsymbols cppccsymbols: run \ eunicefix Guess awk cat tr sed sort rm startsh osname \ +cc gccversion test comm uniq echo Options trnl \ diff --git a/mcon/U/Cross.U b/mcon/U/Cross.U index a54b091..7f1df8a 100644 --- a/mcon/U/Cross.U +++ b/mcon/U/Cross.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Copyright (c) 2001 Jarkko Hietaniemi ?RCS: ?MAKE:run to from targetarch usecrosscompile: src awk cat grep test rm \ diff --git a/mcon/U/Csym.U b/mcon/U/Csym.U index 5e293cd..45ff465 100644 --- a/mcon/U/Csym.U +++ b/mcon/U/Csym.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/End.U b/mcon/U/End.U index 68eb2a6..c309578 100644 --- a/mcon/U/End.U +++ b/mcon/U/End.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -12,12 +12,12 @@ ?RCS: Revision 3.0 1993/08/18 12:04:51 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit serves as the goal which forces make to choose all the units that ?X: ask questions. The $W on the ?MAKE: line is the list of all symbols wanted. ?X: To force any unit to be included, copy this unit to your private U directory ?X: and add the name of the unit desired to the ?MAKE: dependency line. -?X: +?X: ?MAKE:End: $W ?MAKE: -pick add $@ %< ?LINT:use $W diff --git a/mcon/U/Extract.U b/mcon/U/Extract.U index 42fb825..2fa6c55 100644 --- a/mcon/U/Extract.U +++ b/mcon/U/Extract.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -18,13 +18,13 @@ ?RCS: Revision 3.0 1993/08/18 12:04:52 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit produces a shell script which can be doted in order to extract ?X: .SH files with variable substitutions. ?X: ?X: When running Configure from a remote directory ($src is not '.'), ?X: then the files will be created in that directory, so beware! -?X: +?X: ?MAKE:Extract: Mkdirp src ?MAKE: -pick add $@ %< ?F:./extract diff --git a/mcon/U/Extractall.U b/mcon/U/Extractall.U index 641cb86..57b49e9 100644 --- a/mcon/U/Extractall.U +++ b/mcon/U/Extractall.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Filexp.U b/mcon/U/Filexp.U index 719abb3..bf768b1 100644 --- a/mcon/U/Filexp.U +++ b/mcon/U/Filexp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -19,10 +19,10 @@ ?RCS: Revision 3.0 1993/08/18 12:04:53 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit produces a shell script which will expand filenames beginning ?X: with tildes. The script is deleted at the end of Configure. -?X: +?X: ?MAKE:Filexp: startsh sed test expr eunicefix ?MAKE: -pick add $@ %< ?F:./filexp diff --git a/mcon/U/Findhdr.U b/mcon/U/Findhdr.U index a3b62c9..1985669 100644 --- a/mcon/U/Findhdr.U +++ b/mcon/U/Findhdr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Finish.U b/mcon/U/Finish.U index 0cb616a..6085230 100644 --- a/mcon/U/Finish.U +++ b/mcon/U/Finish.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: Finish.U,v $ ?RCS: Revision 3.0.1.6 1995/02/15 14:09:30 ram ?RCS: patch51: now clearer about how to edit config.sh at the prompt (WED) @@ -30,11 +30,11 @@ ?RCS: Revision 3.0 1993/08/18 12:04:55 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit is the very last one in the Configure script. It runs all the ?X: SH files, which among other things produce config.h and (usually) Makefile. ?X: It offers to do a make depend if the Makefile contains that target. -?X: +?X: ?MAKE:Finish: Chk_MANI Extract Myread Oldsym Magic_h cat rm contains \ test package make ?MAKE: -pick add $@ %< diff --git a/mcon/U/Getfile.U b/mcon/U/Getfile.U index 356d99e..f5cf49b 100644 --- a/mcon/U/Getfile.U +++ b/mcon/U/Getfile.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: Getfile.U,v $ ?RCS: Revision 3.0.1.7 1997/02/28 15:01:06 ram ?RCS: patch61: getfile script now begins with "startsh" @@ -36,11 +36,11 @@ ?RCS: Revision 3.0 1993/08/18 12:04:56 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit produces a bit of shell code that must be dotted in in order ?X: to get a file name and make some sanity checks. Optionally, a ~name ?X: expansion is performed. -?X: +?X: ?X: To use this unit, $rp and $dflt must hold the question and the ?X: default answer, which will be passed as-is to the myread script. ?X: The $fn variable must hold the file type (f or d, for file/directory). @@ -70,7 +70,7 @@ ?X: rp='Where is the active file?' ?X: . ./getfile ?X: active="$ans" -?X: +?X: ?X: If the 'p' (path) letter is specified along with 'l', then an answer ?X: without a leading / will be expected to be found in everyone's path. ?X: @@ -218,7 +218,7 @@ while test "$type"; do ?X: is defined, the original un-expanded answer which is stored in value ?X: would lead to "non-existent" error messages whilst ansexp has been ?X: properly expanded. -- Fixed by Jan.Djarv@sa.erisoft.se (Jan Djarv) -?X: Always expand ~user if '/' was requested +?X: Always expand ~user if '/' was requested case "$ansexp" in /*) value="$ansexp" ;; ?X: Allow for c:/some/path and c:\some\path diff --git a/mcon/U/Guess.U b/mcon/U/Guess.U index d160e9d..4722053 100644 --- a/mcon/U/Guess.U +++ b/mcon/U/Guess.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -29,11 +29,11 @@ ?RCS: Revision 3.0 1993/08/18 12:04:57 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit hazards some guesses as to what the general nature of the system ?X: is. The information it collects here is used primarily to establish default ?X: answers to other questions. -?X: +?X: ?MAKE:Guess d_eunice d_xenix d_bsd d_linux d_dos d_os2 d_windows: cat test \ echo n c contains rm tr Loc eunicefix ?MAKE: -pick add $@ %< diff --git a/mcon/U/Head.U b/mcon/U/Head.U index 489d0ae..51bcae5 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -42,10 +42,10 @@ ?RCS: Revision 3.0 1993/08/18 12:04:58 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This is the very first unit in the Configure script. It is mostly just ?X: things to keep people from getting into a tizzy right off the bat. -?X: +?X: ?MAKE:Head: ?MAKE: -pick wipe $@ %< ?V:PATH p_ _exe me newsh diff --git a/mcon/U/Inhdr.U b/mcon/U/Inhdr.U index 69cb213..12dd83b 100644 --- a/mcon/U/Inhdr.U +++ b/mcon/U/Inhdr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Init.U b/mcon/U/Init.U index 0facc98..63ee6bd 100644 --- a/mcon/U/Init.U +++ b/mcon/U/Init.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:02 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This file initializes certain default variables used by Configure. They ?X: may be overridden or added to by definitions in Myinit.U. ?X: diff --git a/mcon/U/Inlibc.U b/mcon/U/Inlibc.U index f6413b7..f79648e 100644 --- a/mcon/U/Inlibc.U +++ b/mcon/U/Inlibc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Instruct.U b/mcon/U/Instruct.U index 37768de..3bc4de2 100644 --- a/mcon/U/Instruct.U +++ b/mcon/U/Instruct.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -21,12 +21,12 @@ ?RCS: Revision 3.0 1993/08/18 12:05:04 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit spew out the directions that we want everyone to read. I try to ?X: keep the first "pagefull" much less than a page since they don't know it ?X: isn't going to go shooting off the top of the screen, and we don't want ?X: to panic them yet. -?X: +?X: ?MAKE:Instruct: Begin Myread Configdir contains ?MAKE: -pick wipe $@ %< ?T:user needman firsttime diff --git a/mcon/U/Loc.U b/mcon/U/Loc.U index 0f24b09..6d6a5d0 100644 --- a/mcon/U/Loc.U +++ b/mcon/U/Loc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -48,16 +48,16 @@ ?RCS: Revision 3.0 1993/08/18 12:05:05 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit produces a shell script "loc" which can be used to find out ?X: where in a list of directories something is. It then uses loc to ?X: determine the location of commonly used programs. It leaves loc sitting ?X: around for other Configure units to use, but arranges for its demise ?X: at the end of Configure. -?X: +?X: ?X: To add a new program to find, add it both to the ?MAKE: line and to either ?X: the loclist or trylist variable. -?X: +?X: ?X: I put startsh at the end of the dependency list, in order to avoid the ?X: loading of the spitshell unit before the instructions. ?X: diff --git a/mcon/U/Loc_sed.U b/mcon/U/Loc_sed.U index 3d23bd8..09a7c1c 100644 --- a/mcon/U/Loc_sed.U +++ b/mcon/U/Loc_sed.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -22,7 +22,7 @@ ?X: Yes, I know about the C symbol PORTABLE, but I think sed ?X: is unlikely to move, and I'm too lazy to add all the ?X: #ifdef PORTABLE sections to the perl source. -?X: +?X: ?C:LOC_SED: ?C: This symbol holds the complete pathname to the sed program. ?C:. diff --git a/mcon/U/Magic_h.U b/mcon/U/Magic_h.U index 86ae307..ccf82b9 100644 --- a/mcon/U/Magic_h.U +++ b/mcon/U/Magic_h.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,7 +15,7 @@ ?RCS: Revision 3.0.1.1 1993/10/16 13:46:59 ram ?RCS: patch12: created for ?M: lines support (magic symbols) ?RCS: -?X: +?X: ?X: This file ends up producing the confmagic.h include, which is used to ?X: automagically remap some C symbols via cpp redefinitions. ?X: diff --git a/mcon/U/MailAuthor.U b/mcon/U/MailAuthor.U index 13da1cb..5b93cde 100644 --- a/mcon/U/MailAuthor.U +++ b/mcon/U/MailAuthor.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/MailList.U b/mcon/U/MailList.U index 0edb009..f89262f 100644 --- a/mcon/U/MailList.U +++ b/mcon/U/MailList.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Original Author: Graham Stoney ?RCS: ?RCS: $Log: MailList.U,v $ diff --git a/mcon/U/Mips.U b/mcon/U/Mips.U index 8083fb4..603b713 100644 --- a/mcon/U/Mips.U +++ b/mcon/U/Mips.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Mkdirp.U b/mcon/U/Mkdirp.U index e093899..ab8097f 100644 --- a/mcon/U/Mkdirp.U +++ b/mcon/U/Mkdirp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -18,10 +18,10 @@ ?RCS: Revision 3.0 1993/08/18 12:04:52 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit produces a shell script which can launched to create a ?X: directory path like "mkdir -p" would do. -?X: +?X: ?MAKE:Mkdirp: eunicefix startsh ?MAKE: -pick add $@ %< ?F:./mkdirp diff --git a/mcon/U/Mksymlinks.U b/mcon/U/Mksymlinks.U index 2754ce1..c150da4 100644 --- a/mcon/U/Mksymlinks.U +++ b/mcon/U/Mksymlinks.U @@ -1,24 +1,24 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Copyright (c) 2000, Jarkko Hietaniemi -?RCS: -?X: +?RCS: +?X: ?X: This unit allows the duplication of the source tree to the current ?X: directory via symbolic links. This must be requested explicitly ?X: by them issuing a -Dmksymlinks on the command line. -?X: +?X: ?MAKE:Mksymlinks: Mkdirp lns issymlink src rsrc pkgsrc ?MAKE: -pick add $@ %< ?F:!UU -?T: dir filename tmppwd filelist +?T: dir filename tmppwd filelist ?LINT:extern mksymlinks @if {test -f ../MANIFEST} : Duplicate the tree with symbolic links if -Dmksymlinks was supplied diff --git a/mcon/U/Myinit.U b/mcon/U/Myinit.U index 24a42bf..81747c3 100644 --- a/mcon/U/Myinit.U +++ b/mcon/U/Myinit.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:07 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: If you want to initialize any default values, copy this unit to your ?X: personal U directory and add the assignments to the end. This file ?X: is included after variables are initialized but before any old diff --git a/mcon/U/Myread.U b/mcon/U/Myread.U index eb94ba9..0f879ed 100644 --- a/mcon/U/Myread.U +++ b/mcon/U/Myread.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -31,15 +31,15 @@ ?RCS: Revision 3.0 1993/08/18 12:05:08 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit produces a bit of shell code that must be dotted in in order ?X: to do a read. It allows for shell escapes, default assignment and ?X: parameter evaluation. -?X: +?X: ?X: To use this unit, $rp and $dflt must hold the question and the ?X: default answer. The question will be printed by the script itself. ?X: Neither $rp nor $dflt is altered by the script. -?X: +?X: ?X: The myread script will stick to the question if no default is proposed ?X: and the user answer is empty, which prevents mistakes. However, at the ?X: end of Configure, there is an exception to this rule (Finish.U) where we diff --git a/mcon/U/Nothing.U b/mcon/U/Nothing.U index fc10999..0709901 100644 --- a/mcon/U/Nothing.U +++ b/mcon/U/Nothing.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -12,8 +12,8 @@ ?RCS: Revision 3.0 1993/08/18 12:05:09 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: The purpose of this file is to supply an empty target for the private ?X: Makefile built by metaconfig to order the units. -?X: +?X: ?MAKE:Nothing: Head diff --git a/mcon/U/Null.U b/mcon/U/Null.U index 720069e..6f9fc70 100644 --- a/mcon/U/Null.U +++ b/mcon/U/Null.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -12,9 +12,9 @@ ?RCS: Revision 3.0 1993/08/18 12:05:10 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit ends up producing shell code to set all variables to ''. This ?X: probably isn't necessary, but I'm paranoid. About certain things. -?X: +?X: ?MAKE:Null: Head ?MAKE: -pick add.Null $@ %< diff --git a/mcon/U/Obsol_h.U b/mcon/U/Obsol_h.U index 48522b5..fc59938 100644 --- a/mcon/U/Obsol_h.U +++ b/mcon/U/Obsol_h.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -12,10 +12,10 @@ ?RCS: Revision 3.0 1993/08/18 12:05:11 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This file is prepended to .MT/Obsol_h if that file is not empty. That file ?X: contains the necessary mappings of new symbols to obsolete ones. -?X: +?X: ?MAKE:Obsol_h: ?MAKE: -pick prepend $@ ./Obsol_h ?LINT:nocomment diff --git a/mcon/U/Obsol_sh.U b/mcon/U/Obsol_sh.U index cae6160..de1a1e1 100644 --- a/mcon/U/Obsol_sh.U +++ b/mcon/U/Obsol_sh.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -12,10 +12,10 @@ ?RCS: Revision 3.0 1993/08/18 12:05:11 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This file is prepended to .MT/Obsol_sh if that file is not empty. That file ?X: contains the necessary mappings of new symbols to obsolete ones. -?X: +?X: ?MAKE:Obsol_sh: ?MAKE: -pick prepend $@ ./Obsol_sh ?LINT:nocomment diff --git a/mcon/U/Oldconfig.U b/mcon/U/Oldconfig.U index 64233b9..ca18947 100644 --- a/mcon/U/Oldconfig.U +++ b/mcon/U/Oldconfig.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -205,7 +205,7 @@ if $test "X$has_uname" != X; then ?X: $3 and $4 are version/subversion ?X: $5 is always "pc", but that might not be unique to DJGPP. ?X: (e.g. Solaris_x86 has $5 = i86pc, which doesn't actually conflict, -?X: but it's close enough that I can easily imagine other vendors also +?X: but it's close enough that I can easily imagine other vendors also ?X: using variants of pc* in $5.) ?X: The "DJGPP" environment variable is always set when djgpp is active. pc*) @@ -218,7 +218,7 @@ if $test "X$has_uname" != X; then case "$1" in aix) osname=aix ?X: aix 4.1 uname -a output looks like -?X: AIX foo 1 4 000123456789 +?X: AIX foo 1 4 000123456789 ?X: where $4 is the major release number and $3 is the (minor) version. ?X: More detail on the version is available with the oslevel command. ?X: in 3.2.x, it output a string (see case statements below). In 4.1, diff --git a/mcon/U/Oldsym.U b/mcon/U/Oldsym.U index e792c69..5e85313 100644 --- a/mcon/U/Oldsym.U +++ b/mcon/U/Oldsym.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,12 +15,12 @@ ?RCS: Revision 3.0 1993/08/18 12:05:13 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit follows the creation of the config.sh file. It adds some ?X: special symbols: defines from patchlevel.h file if any and CONFIG, ?X: which is set to true. Then, we try to keep all the new symbols that ?X: may come from a hint file or a previous config.sh file. -?X: +?X: ?MAKE:Oldsym: Config_sh Options test hint src sed sort uniq ?MAKE: -pick add $@ %< ?T:CONFIG sym tmp diff --git a/mcon/U/Options.U b/mcon/U/Options.U index f58f4c7..2bfe289 100644 --- a/mcon/U/Options.U +++ b/mcon/U/Options.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -355,9 +355,9 @@ true) exec 1>/dev/null;; esac ?X: Patch from H.Merijn Brand -- 2015-04-19 -?X: The reasoning behind this change is that optdef.sh gets sourced and the -?X: arguments, like prefix, are passed around in different quotation styles -?X: and subshells all around, and the (unescaped) backslash will not be +?X: The reasoning behind this change is that optdef.sh gets sourced and the +?X: arguments, like prefix, are passed around in different quotation styles +?X: and subshells all around, and the (unescaped) backslash will not be ?X: pertained in the final config.sh ?X: Note that -q is POSIX but to be sure, we also silence all output --RAM touch optdef.sh diff --git a/mcon/U/Prefixit.U b/mcon/U/Prefixit.U index 727dc6e..875024d 100644 --- a/mcon/U/Prefixit.U +++ b/mcon/U/Prefixit.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Prefixup.U b/mcon/U/Prefixup.U index 31901a7..3c6778f 100644 --- a/mcon/U/Prefixup.U +++ b/mcon/U/Prefixup.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Rcs.U b/mcon/U/Rcs.U index eedccbf..b8d7a42 100644 --- a/mcon/U/Rcs.U +++ b/mcon/U/Rcs.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -12,12 +12,12 @@ ?RCS: Revision 3.0 1993/08/18 12:05:15 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This is a unit that helps people who write SH scripts and keep them under ?X: RCS, but don't think to protect the $Log and other $Id keywords from ?X: variable substitution (or people like me who do not like to). -?X: -?MAKE:Author Date Header Id Locker Log RCSfile Revision Source State: Oldconfig +?X: +?MAKE:Author Date Header Id Locker Log RCSfile Revision Source State: Oldconfig ?MAKE: -pick weed $@ %< ?LINT:describe Author Date Header Id Locker Log RCSfile Revision Source State : preserve RCS keywords in files with variable substitution, grrr diff --git a/mcon/U/Setvar.U b/mcon/U/Setvar.U index d1df91c..7c018e9 100644 --- a/mcon/U/Setvar.U +++ b/mcon/U/Setvar.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Signal.U b/mcon/U/Signal.U index fa0518f..769e358 100644 --- a/mcon/U/Signal.U +++ b/mcon/U/Signal.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -32,9 +32,9 @@ ?X: signal.cmd vs. signal. ?X: The signal_cmd script also falls back on checking signals one at a ?X: time in case the signal.c program fails. On at least one version of -?X: Linux 2.1.x, the header file #define'd SIGRTMAX to a symbol that +?X: Linux 2.1.x, the header file #define'd SIGRTMAX to a symbol that ?X: is not defined by the compiler/linker. :-(. Further, on that same -?X: version of Linux, the user had a defective C-shell that gave an +?X: version of Linux, the user had a defective C-shell that gave an ?X: incorrect list for kill -l, so the fall-back didn't work. ?X: ?X: This unit is then used by sig_name.U. @@ -63,7 +63,7 @@ else $sed 's!\\\\\\\\!/!g' | $sort | $uniq` fi ?X: Check this list of files to be sure we have parsed the cpp output ok. -?X: This will also avoid potentially non-existent files, such +?X: This will also avoid potentially non-existent files, such ?X: as ../foo/bar.h xxxfiles='' ?X: Add /dev/null in case the $xxx list is empty. diff --git a/mcon/U/Tr.U b/mcon/U/Tr.U index a24f04c..f58d163 100644 --- a/mcon/U/Tr.U +++ b/mcon/U/Tr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,7 +15,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 15:58:35 ram ?RCS: patch36: created ?RCS: -?X: +?X: ?X: This unit produces a bit of shell code that must be dotted in in order ?X: to do a character translation. It catches translations to uppercase or ?X: to lowercase, and then invokes the real tr to perform the job. diff --git a/mcon/U/Trylink.U b/mcon/U/Trylink.U index 42504fb..d45ffe2 100644 --- a/mcon/U/Trylink.U +++ b/mcon/U/Trylink.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Typedef.U b/mcon/U/Typedef.U index 82ef5da..ad39117 100644 --- a/mcon/U/Typedef.U +++ b/mcon/U/Typedef.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Unix.U b/mcon/U/Unix.U index 8d0b9ef..5ab7fc3 100644 --- a/mcon/U/Unix.U +++ b/mcon/U/Unix.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/Warn.U b/mcon/U/Warn.U index d2563f0..36b37eb 100644 --- a/mcon/U/Warn.U +++ b/mcon/U/Warn.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -9,7 +9,7 @@ ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: Extract.U,v $ -?X: +?X: ?X: This unit produces a shell script which can be run in order to emit ?X: an important warning to the user, which will be remembered and shown ?X: at the end of the Configure run as well. diff --git a/mcon/U/Warn_v7EXT.U b/mcon/U/Warn_v7EXT.U index 0eb9c3e..42e48e0 100644 --- a/mcon/U/Warn_v7EXT.U +++ b/mcon/U/Warn_v7EXT.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,11 +15,11 @@ ?RCS: Revision 3.0 1993/08/18 12:05:17 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit issues warnings to V7 sites that they are living dangerously. ?X: This unit needs to get mentioned in End.U to get included. -?X: -?MAKE:Warn_v7EXT: package Guess +?X: +?MAKE:Warn_v7EXT: package Guess ?MAKE: -pick add $@ %< : Warnings if ./v7; then diff --git a/mcon/U/Warn_v7ND.U b/mcon/U/Warn_v7ND.U index 8c582fe..e0cba02 100644 --- a/mcon/U/Warn_v7ND.U +++ b/mcon/U/Warn_v7ND.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,11 +15,11 @@ ?RCS: Revision 3.0 1993/08/18 12:05:18 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit warns V7 sites that they may not have a non-blocking read. ?X: This unit needs to be mentioned in End.U to get included. -?X: -?MAKE:Warn_v7ND: package Guess +?X: +?MAKE:Warn_v7ND: package Guess ?MAKE: -pick add $@ %< : Warnings if ./v7; then diff --git a/mcon/U/Whoa.U b/mcon/U/Whoa.U index 053fcf8..abc0637 100644 --- a/mcon/U/Whoa.U +++ b/mcon/U/Whoa.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -18,16 +18,16 @@ ?RCS: Revision 3.0 1993/08/18 12:05:19 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?X: +?X: ?X: This unit produces a bit of shell code that must be dotted in in order ?X: to warn the user in case a change into a variable is noticed. -?X: +?X: ?X: To use this unit, $was must hold the old value that has changed. Upon ?X: exit, the two variables $td and $tu are set to the correct value for ?X: respectively defining or undefining a variable. For instance, if $vas was ?X: $undef, but now $var is $define, after calling . whoa, you should use ?X: eval "$var=\$tu" to finally set $var to the correct value. See unit Inlibc. -?X: +?X: ?MAKE:Whoa: Myread startsh hint ?MAKE: -pick add $@ %< ?F:./whoa diff --git a/mcon/U/abortsig.U b/mcon/U/abortsig.U index dbefbb1..1d9d083 100644 --- a/mcon/U/abortsig.U +++ b/mcon/U/abortsig.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/active.U b/mcon/U/active.U index 464c5d0..e2cb287 100644 --- a/mcon/U/active.U +++ b/mcon/U/active.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/afs.U b/mcon/U/afs.U index 1ee384d..1688021 100644 --- a/mcon/U/afs.U +++ b/mcon/U/afs.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: afs.U,v $ ?RCS: Revision 3.0.1.2 1997/02/28 15:23:06 ram ?RCS: patch61: can now explicitely tell Configure whether AFS is running @@ -27,7 +27,7 @@ ?S: This variable is by default set to '/afs'. In the unlikely case ?S: this is not the correct root, it is possible to override this with ?S: a hint value or command line option. This will be used in subsequent -?S: tests for AFSness in the configure and test process. +?S: tests for AFSness in the configure and test process. ?S:. : allow them to override the AFS root case "$afsroot" in diff --git a/mcon/U/alignbytes.U b/mcon/U/alignbytes.U index 2e17f01..569c25a 100644 --- a/mcon/U/alignbytes.U +++ b/mcon/U/alignbytes.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/archlib.U b/mcon/U/archlib.U index a18a571..d5ed39b 100644 --- a/mcon/U/archlib.U +++ b/mcon/U/archlib.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -40,11 +40,11 @@ ?S: This variable holds the name of the directory in which the user wants ?S: to put architecture-dependent public library files for $package. ?S: It is most often a local directory such as /usr/local/lib. -?S: Programs using this variable must be prepared to deal +?S: Programs using this variable must be prepared to deal ?S: with filename expansion. ?S:. ?S:archlibexp: -?S: This variable is the same as the archlib variable, but is +?S: This variable is the same as the archlib variable, but is ?S: filename expanded at configuration time, for convenient use. ?S:. ?S:installarchlib: diff --git a/mcon/U/archname.U b/mcon/U/archname.U index abb53f8..8d79e2a 100644 --- a/mcon/U/archname.U +++ b/mcon/U/archname.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/baserev.U b/mcon/U/baserev.U index d061204..fe47c36 100644 --- a/mcon/U/baserev.U +++ b/mcon/U/baserev.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/basicshell.U b/mcon/U/basicshell.U index 69509d5..1d4d769 100644 --- a/mcon/U/basicshell.U +++ b/mcon/U/basicshell.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/bin.U b/mcon/U/bin.U index 0ce4930..8b33c22 100644 --- a/mcon/U/bin.U +++ b/mcon/U/bin.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/bitpbyte.U b/mcon/U/bitpbyte.U index d71a4de..cdd2c05 100644 --- a/mcon/U/bitpbyte.U +++ b/mcon/U/bitpbyte.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/byteorder.U b/mcon/U/byteorder.U index 8989838..ef2050a 100644 --- a/mcon/U/byteorder.U +++ b/mcon/U/byteorder.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/cc.U b/mcon/U/cc.U index b051c6d..b20f5f5 100644 --- a/mcon/U/cc.U +++ b/mcon/U/cc.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: cc.U,v $ ?RCS: Revision 3.0.1.4 1995/05/12 12:06:47 ram ?RCS: patch54: may now abort Configure when cc does not work diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index c36f4a9..7c41532 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/cf_email.U b/mcon/U/cf_email.U index d5d50a0..acc950e 100644 --- a/mcon/U/cf_email.U +++ b/mcon/U/cf_email.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: cf_email.U,v $ ?RCS: Revision 3.0.1.1 1994/01/24 14:05:06 ram ?RCS: patch16: created diff --git a/mcon/U/cf_name.U b/mcon/U/cf_name.U index a7c54a1..a711ffd 100644 --- a/mcon/U/cf_name.U +++ b/mcon/U/cf_name.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Original Author: Graham Stoney ?RCS: ?RCS: $Log: cf_name.U,v $ diff --git a/mcon/U/cf_who.U b/mcon/U/cf_who.U index 801f330..d89b1d4 100644 --- a/mcon/U/cf_who.U +++ b/mcon/U/cf_who.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/charorder.U b/mcon/U/charorder.U index 7ab5499..5c445de 100644 --- a/mcon/U/charorder.U +++ b/mcon/U/charorder.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/charsize.U b/mcon/U/charsize.U index cf18988..f69fea7 100644 --- a/mcon/U/charsize.U +++ b/mcon/U/charsize.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/contains.U b/mcon/U/contains.U index 1e60263..0ac11f5 100644 --- a/mcon/U/contains.U +++ b/mcon/U/contains.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/cpp_stuff.U b/mcon/U/cpp_stuff.U index cc34d3a..3a0715b 100644 --- a/mcon/U/cpp_stuff.U +++ b/mcon/U/cpp_stuff.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/cpp_trad.U b/mcon/U/cpp_trad.U index 0bc5b44..3f86047 100644 --- a/mcon/U/cpp_trad.U +++ b/mcon/U/cpp_trad.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/cppfilecom.U b/mcon/U/cppfilecom.U index ac16566..3216080 100644 --- a/mcon/U/cppfilecom.U +++ b/mcon/U/cppfilecom.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/cppstdin.U b/mcon/U/cppstdin.U index 3b476f0..822493d 100644 --- a/mcon/U/cppstdin.U +++ b/mcon/U/cppstdin.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_NOFILE.U b/mcon/U/d_NOFILE.U index 5dffaea..d602b51 100644 --- a/mcon/U/d_NOFILE.U +++ b/mcon/U/d_NOFILE.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_NeWS.U b/mcon/U/d_NeWS.U index b5444ec..d951cdb 100644 --- a/mcon/U/d_NeWS.U +++ b/mcon/U/d_NeWS.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_PORTAR.U b/mcon/U/d_PORTAR.U index 21e5986..01ac6d1 100644 --- a/mcon/U/d_PORTAR.U +++ b/mcon/U/d_PORTAR.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_SHM_MAC.U b/mcon/U/d_SHM_MAC.U index 69f1936..de4433e 100644 --- a/mcon/U/d_SHM_MAC.U +++ b/mcon/U/d_SHM_MAC.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_access.U b/mcon/U/d_access.U index 9ab6dab..fff13db 100644 --- a/mcon/U/d_access.U +++ b/mcon/U/d_access.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_alarm.U b/mcon/U/d_alarm.U index 1057e6e..1452763 100644 --- a/mcon/U/d_alarm.U +++ b/mcon/U/d_alarm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_attribut.U b/mcon/U/d_attribut.U index 63a01e4..7c56fa1 100644 --- a/mcon/U/d_attribut.U +++ b/mcon/U/d_attribut.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_backtrace.U b/mcon/U/d_backtrace.U index e2fd99e..7c5f914 100644 --- a/mcon/U/d_backtrace.U +++ b/mcon/U/d_backtrace.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_bcmp.U b/mcon/U/d_bcmp.U index aac0a6d..e64052e 100644 --- a/mcon/U/d_bcmp.U +++ b/mcon/U/d_bcmp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_bcopy.U b/mcon/U/d_bcopy.U index a7c3e65..9e91dd7 100644 --- a/mcon/U/d_bcopy.U +++ b/mcon/U/d_bcopy.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_bfd_lib.U b/mcon/U/d_bfd_lib.U index a58d1c1..d1fa688 100644 --- a/mcon/U/d_bfd_lib.U +++ b/mcon/U/d_bfd_lib.U @@ -1,7 +1,7 @@ ?RCS: $Id: d_dlopen.U 40 2010-11-27 20:54:48Z rmanfredi $ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_brokstat.U b/mcon/U/d_brokstat.U index 57a1a71..e82ad4b 100644 --- a/mcon/U/d_brokstat.U +++ b/mcon/U/d_brokstat.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_bsdjmp.U b/mcon/U/d_bsdjmp.U index 695528f..d1f7726 100644 --- a/mcon/U/d_bsdjmp.U +++ b/mcon/U/d_bsdjmp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_bsearch.U b/mcon/U/d_bsearch.U index 17ac23a..a1fbc94 100644 --- a/mcon/U/d_bsearch.U +++ b/mcon/U/d_bsearch.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_byacc.U b/mcon/U/d_byacc.U index a13001f..91f3963 100644 --- a/mcon/U/d_byacc.U +++ b/mcon/U/d_byacc.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -20,7 +20,7 @@ ?S: If the user has specified 'portability', then Makefile.SH ?S: sees $byacc='byacc' whether or not the user actually has ?S: byacc. This variable allows us to determine in a makefile -?S: if we really have byacc. +?S: if we really have byacc. ?S:. ?LINT:set d_byacc : Check if we really have byacc diff --git a/mcon/U/d_bzero.U b/mcon/U/d_bzero.U index 6b46ee7..14f7e4d 100644 --- a/mcon/U/d_bzero.U +++ b/mcon/U/d_bzero.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_casti32.U b/mcon/U/d_casti32.U index 471ef58..7641da8 100644 --- a/mcon/U/d_casti32.U +++ b/mcon/U/d_casti32.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_castneg.U b/mcon/U/d_castneg.U index 55478da..be8ae0e 100644 --- a/mcon/U/d_castneg.U +++ b/mcon/U/d_castneg.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_cbrt.U b/mcon/U/d_cbrt.U index ccc9a6e..42dd284 100644 --- a/mcon/U/d_cbrt.U +++ b/mcon/U/d_cbrt.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_charsprf.U b/mcon/U/d_charsprf.U index ebb09c0..2364018 100644 --- a/mcon/U/d_charsprf.U +++ b/mcon/U/d_charsprf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_chown.U b/mcon/U/d_chown.U index 8678112..45fd681 100644 --- a/mcon/U/d_chown.U +++ b/mcon/U/d_chown.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_chroot.U b/mcon/U/d_chroot.U index 0bcc241..ef6f4be 100644 --- a/mcon/U/d_chroot.U +++ b/mcon/U/d_chroot.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_chsize.U b/mcon/U/d_chsize.U index 4fab76f..7b6bee2 100644 --- a/mcon/U/d_chsize.U +++ b/mcon/U/d_chsize.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_ckeypad.U b/mcon/U/d_ckeypad.U index 6564bb1..7e9566a 100644 --- a/mcon/U/d_ckeypad.U +++ b/mcon/U/d_ckeypad.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_clock_getres.U b/mcon/U/d_clock_getres.U index 6fd0216..793692e 100644 --- a/mcon/U/d_clock_getres.U +++ b/mcon/U/d_clock_getres.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2014 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_clock_gettime.U b/mcon/U/d_clock_gettime.U index ab5cab4..3e2cf4d 100644 --- a/mcon/U/d_clock_gettime.U +++ b/mcon/U/d_clock_gettime.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2014 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_closedir.U b/mcon/U/d_closedir.U index b115cc7..c0cd33a 100644 --- a/mcon/U/d_closedir.U +++ b/mcon/U/d_closedir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_const.U b/mcon/U/d_const.U index bd8a5ae..18afb2b 100644 --- a/mcon/U/d_const.U +++ b/mcon/U/d_const.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_crypt.U b/mcon/U/d_crypt.U index 5a6b265..abc32c2 100644 --- a/mcon/U/d_crypt.U +++ b/mcon/U/d_crypt.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: d_crypt.U,v $ ?RCS: Revision 3.0.1.1 1997/02/28 15:31:47 ram ?RCS: patch61: replaced .a with $_a all over the place diff --git a/mcon/U/d_csh.U b/mcon/U/d_csh.U index 6f1829e..926f833 100644 --- a/mcon/U/d_csh.U +++ b/mcon/U/d_csh.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -35,7 +35,7 @@ ?C: This symbol, if defined, contains the full pathname of csh. ?C:. ?X: Previously, I just did $d_csh CSH "$full_csh", but that caused -?X: problems on VMS where the config.sh extraction program changes +?X: problems on VMS where the config.sh extraction program changes ?X: $undef to a real cpp undef, and they then had #undef CSH "" ?X: which the compiler didn't like. It's easy to work around this, ?X: so I did. --AD 3/1998. diff --git a/mcon/U/d_ctermid.U b/mcon/U/d_ctermid.U index 316400d..cf0a110 100644 --- a/mcon/U/d_ctermid.U +++ b/mcon/U/d_ctermid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_cuserid.U b/mcon/U/d_cuserid.U index 08ba1f7..d713ad8 100644 --- a/mcon/U/d_cuserid.U +++ b/mcon/U/d_cuserid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_datastart_symbol.U b/mcon/U/d_datastart_symbol.U index 6d83a8f..5c24755 100644 --- a/mcon/U/d_datastart_symbol.U +++ b/mcon/U/d_datastart_symbol.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_dbl_dig.U b/mcon/U/d_dbl_dig.U index c8b6fc0..30066cd 100644 --- a/mcon/U/d_dbl_dig.U +++ b/mcon/U/d_dbl_dig.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_debugging.U b/mcon/U/d_debugging.U index b411577..3aaa520 100644 --- a/mcon/U/d_debugging.U +++ b/mcon/U/d_debugging.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_difftime.U b/mcon/U/d_difftime.U index a059df3..82ddb21 100644 --- a/mcon/U/d_difftime.U +++ b/mcon/U/d_difftime.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2013 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_dirfd.U b/mcon/U/d_dirfd.U index 269b2d4..3e64671 100644 --- a/mcon/U/d_dirfd.U +++ b/mcon/U/d_dirfd.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_dladdr.U b/mcon/U/d_dladdr.U index 7972c33..d0e2d8d 100644 --- a/mcon/U/d_dladdr.U +++ b/mcon/U/d_dladdr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_dlerror.U b/mcon/U/d_dlerror.U index 50235f8..72a7c7f 100644 --- a/mcon/U/d_dlerror.U +++ b/mcon/U/d_dlerror.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_dliterphdr.U b/mcon/U/d_dliterphdr.U index f34e2c8..fd6e2b7 100644 --- a/mcon/U/d_dliterphdr.U +++ b/mcon/U/d_dliterphdr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2012, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_dlopen.U b/mcon/U/d_dlopen.U index a932411..216789b 100644 --- a/mcon/U/d_dlopen.U +++ b/mcon/U/d_dlopen.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_dosuid.U b/mcon/U/d_dosuid.U index a3eb5a4..1e82270 100644 --- a/mcon/U/d_dosuid.U +++ b/mcon/U/d_dosuid.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Tye McQueen added safe setuid script checks. ?RCS: ?RCS: $Log: d_dosuid.U,v $ diff --git a/mcon/U/d_drem.U b/mcon/U/d_drem.U index 0235265..53fa8c7 100644 --- a/mcon/U/d_drem.U +++ b/mcon/U/d_drem.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_dup2.U b/mcon/U/d_dup2.U index 0da8474..f807297 100644 --- a/mcon/U/d_dup2.U +++ b/mcon/U/d_dup2.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_end_symbol.U b/mcon/U/d_end_symbol.U index dcc5ac9..1a46ec2 100644 --- a/mcon/U/d_end_symbol.U +++ b/mcon/U/d_end_symbol.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_eofpipe.U b/mcon/U/d_eofpipe.U index 50fe0e7..91636a1 100644 --- a/mcon/U/d_eofpipe.U +++ b/mcon/U/d_eofpipe.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_etext_symbol.U b/mcon/U/d_etext_symbol.U index ee4a1f2..076d016 100644 --- a/mcon/U/d_etext_symbol.U +++ b/mcon/U/d_etext_symbol.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_euc2jis.U b/mcon/U/d_euc2jis.U index 984f02f..b1e11aa 100644 --- a/mcon/U/d_euc2jis.U +++ b/mcon/U/d_euc2jis.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fchdir.U b/mcon/U/d_fchdir.U index 2ed47e2..382971d 100644 --- a/mcon/U/d_fchdir.U +++ b/mcon/U/d_fchdir.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fchmod.U b/mcon/U/d_fchmod.U index dac42dc..367b216 100644 --- a/mcon/U/d_fchmod.U +++ b/mcon/U/d_fchmod.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fchown.U b/mcon/U/d_fchown.U index d6e6a9a..731f48b 100644 --- a/mcon/U/d_fchown.U +++ b/mcon/U/d_fchown.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fcntl.U b/mcon/U/d_fcntl.U index ee69176..4351354 100644 --- a/mcon/U/d_fcntl.U +++ b/mcon/U/d_fcntl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fd_set.U b/mcon/U/d_fd_set.U index 146a6a6..dbba6c2 100644 --- a/mcon/U/d_fd_set.U +++ b/mcon/U/d_fd_set.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fdatasync.U b/mcon/U/d_fdatasync.U index b989630..151fc48 100644 --- a/mcon/U/d_fdatasync.U +++ b/mcon/U/d_fdatasync.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2013 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fdopendir.U b/mcon/U/d_fdopendir.U index 02a0ddc..3fcca91 100644 --- a/mcon/U/d_fdopendir.U +++ b/mcon/U/d_fdopendir.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_ffs.U b/mcon/U/d_ffs.U index 5f55a4a..93c7667 100644 --- a/mcon/U/d_ffs.U +++ b/mcon/U/d_ffs.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fgetpos.U b/mcon/U/d_fgetpos.U index b27772c..ff8541d 100644 --- a/mcon/U/d_fgetpos.U +++ b/mcon/U/d_fgetpos.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_flexfnam.U b/mcon/U/d_flexfnam.U index 7c324b2..6adb85b 100644 --- a/mcon/U/d_flexfnam.U +++ b/mcon/U/d_flexfnam.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_flock.U b/mcon/U/d_flock.U index 814928e..76d20c2 100644 --- a/mcon/U/d_flock.U +++ b/mcon/U/d_flock.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fmod.U b/mcon/U/d_fmod.U index 14be56b..6be9e81 100644 --- a/mcon/U/d_fmod.U +++ b/mcon/U/d_fmod.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fork.U b/mcon/U/d_fork.U index f968709..562100a 100644 --- a/mcon/U/d_fork.U +++ b/mcon/U/d_fork.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fsetpos.U b/mcon/U/d_fsetpos.U index 9056078..15e244a 100644 --- a/mcon/U/d_fsetpos.U +++ b/mcon/U/d_fsetpos.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fstatat.U b/mcon/U/d_fstatat.U index 55412f7..0f5b008 100644 --- a/mcon/U/d_fstatat.U +++ b/mcon/U/d_fstatat.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fsync.U b/mcon/U/d_fsync.U index 0bc9e4a..3e9a98f 100644 --- a/mcon/U/d_fsync.U +++ b/mcon/U/d_fsync.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2013 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_ftime.U b/mcon/U/d_ftime.U index a19cbb3..f7c1095 100644 --- a/mcon/U/d_ftime.U +++ b/mcon/U/d_ftime.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_ftrncate.U b/mcon/U/d_ftrncate.U index 5551b50..d96b71f 100644 --- a/mcon/U/d_ftrncate.U +++ b/mcon/U/d_ftrncate.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_gconvert.U b/mcon/U/d_gconvert.U index 6fc6b63..efd24f0 100644 --- a/mcon/U/d_gconvert.U +++ b/mcon/U/d_gconvert.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -47,7 +47,7 @@ ?H:. ?T: xxx_list xxx_convert ?F:!try -?X: +?X: : Check how to convert floats to strings. echo " " echo "Checking for an efficient way to convert floats to strings." diff --git a/mcon/U/d_getcontext.U b/mcon/U/d_getcontext.U index 5edac33..eac7d22 100644 --- a/mcon/U/d_getcontext.U +++ b/mcon/U/d_getcontext.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2012, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getgrps.U b/mcon/U/d_getgrps.U index c27e862..5f0ab24 100644 --- a/mcon/U/d_getgrps.U +++ b/mcon/U/d_getgrps.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_gethbynm.U b/mcon/U/d_gethbynm.U index 438b057..1b9af63 100644 --- a/mcon/U/d_gethbynm.U +++ b/mcon/U/d_gethbynm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_gethent.U b/mcon/U/d_gethent.U index c414ea9..b0138c5 100644 --- a/mcon/U/d_gethent.U +++ b/mcon/U/d_gethent.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_gethid.U b/mcon/U/d_gethid.U index 9b4b6de..66fdfb9 100644 --- a/mcon/U/d_gethid.U +++ b/mcon/U/d_gethid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_gethname.U b/mcon/U/d_gethname.U index cd206c1..3dea067 100644 --- a/mcon/U/d_gethname.U +++ b/mcon/U/d_gethname.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getlogin.U b/mcon/U/d_getlogin.U index f07553c..b3c7581 100644 --- a/mcon/U/d_getlogin.U +++ b/mcon/U/d_getlogin.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getopt.U b/mcon/U/d_getopt.U index 9e8311b..61accb7 100644 --- a/mcon/U/d_getopt.U +++ b/mcon/U/d_getopt.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getpagsz.U b/mcon/U/d_getpagsz.U index f2adf02..2499ebe 100644 --- a/mcon/U/d_getpagsz.U +++ b/mcon/U/d_getpagsz.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getpgid.U b/mcon/U/d_getpgid.U index 8957f0e..e318ce2 100644 --- a/mcon/U/d_getpgid.U +++ b/mcon/U/d_getpgid.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -21,7 +21,7 @@ ?S: is available to get the process group id. ?S:. ?C:HAS_GETPGID: -?C: This symbol, if defined, indicates to the C program that +?C: This symbol, if defined, indicates to the C program that ?C: the getpgid(pid) function is available to get the ?C: process group id. ?C:. diff --git a/mcon/U/d_getpgrp.U b/mcon/U/d_getpgrp.U index 5662bdf..c11c524 100644 --- a/mcon/U/d_getpgrp.U +++ b/mcon/U/d_getpgrp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getpgrp2.U b/mcon/U/d_getpgrp2.U index 81abff6..67aec2a 100644 --- a/mcon/U/d_getpgrp2.U +++ b/mcon/U/d_getpgrp2.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getppid.U b/mcon/U/d_getppid.U index c37e1c0..c98debc 100644 --- a/mcon/U/d_getppid.U +++ b/mcon/U/d_getppid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getprior.U b/mcon/U/d_getprior.U index 7165918..74bf4bd 100644 --- a/mcon/U/d_getprior.U +++ b/mcon/U/d_getprior.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getpwent.U b/mcon/U/d_getpwent.U index 540c334..b16a012 100644 --- a/mcon/U/d_getpwent.U +++ b/mcon/U/d_getpwent.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getpwnam.U b/mcon/U/d_getpwnam.U index 74d117a..f2c784f 100644 --- a/mcon/U/d_getpwnam.U +++ b/mcon/U/d_getpwnam.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getpwuid.U b/mcon/U/d_getpwuid.U index 8c49ea3..af5eb0d 100644 --- a/mcon/U/d_getpwuid.U +++ b/mcon/U/d_getpwuid.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getrlimit.U b/mcon/U/d_getrlimit.U index 965bb12..b50d86f 100644 --- a/mcon/U/d_getrlimit.U +++ b/mcon/U/d_getrlimit.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_getwd.U b/mcon/U/d_getwd.U index f250cd9..d55cd13 100644 --- a/mcon/U/d_getwd.U +++ b/mcon/U/d_getwd.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_gnulibc.U b/mcon/U/d_gnulibc.U index a34b936..12b1fef 100644 --- a/mcon/U/d_gnulibc.U +++ b/mcon/U/d_gnulibc.U @@ -3,7 +3,7 @@ ?RCS: Copyright (c) 1996,1998 Andy Dougherty ?RCS: Copyright (c) 1996, Sven Verdoolaege ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -22,7 +22,7 @@ ?S: is not the GNU C library, or if the version is unknown. ?S:. ?C:HAS_GNULIBC ~ %<: -?C: This symbol, if defined, indicates to the C program that +?C: This symbol, if defined, indicates to the C program that ?C: the GNU C library is being used. A better check is to use ?C: the __GLIBC__ and __GLIBC_MINOR__ symbols supplied with glibc. ?C:. @@ -46,7 +46,7 @@ ?X: #define __GLIBC__ 2 ?X: #define__GLIBC_MINOR__ 0. ?X: (The '6' isn't available :-(. -?X: glibc2.1 will also have +?X: glibc2.1 will also have ?X: extern const char * __gnu_get_libc_release(void); ?X: extern const char * __gnu_get_libc_version(void); ?X: functions. --thanks to Andreas Jaeger. --AD 6/1998. diff --git a/mcon/U/d_group.U b/mcon/U/d_group.U index b68d102..3c8f914 100644 --- a/mcon/U/d_group.U +++ b/mcon/U/d_group.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_havetlib.U b/mcon/U/d_havetlib.U index 5f45ddf..24017ad 100644 --- a/mcon/U/d_havetlib.U +++ b/mcon/U/d_havetlib.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_hidnet.U b/mcon/U/d_hidnet.U index d4bf5ab..ffa8a5d 100644 --- a/mcon/U/d_hidnet.U +++ b/mcon/U/d_hidnet.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_htonl.U b/mcon/U/d_htonl.U index 2a6d33b..5e601b0 100644 --- a/mcon/U/d_htonl.U +++ b/mcon/U/d_htonl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_ieee754.U b/mcon/U/d_ieee754.U index 1abb0aa..124e09c 100644 --- a/mcon/U/d_ieee754.U +++ b/mcon/U/d_ieee754.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_inetaton.U b/mcon/U/d_inetaton.U index fbee3f0..5ac8957 100644 --- a/mcon/U/d_inetaton.U +++ b/mcon/U/d_inetaton.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Spider Boardman ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_inetd.U b/mcon/U/d_inetd.U index fc1b044..52e956d 100644 --- a/mcon/U/d_inetd.U +++ b/mcon/U/d_inetd.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_internet.U b/mcon/U/d_internet.U index 2684991..684b3e8 100644 --- a/mcon/U/d_internet.U +++ b/mcon/U/d_internet.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_isascii.U b/mcon/U/d_isascii.U index e2ba587..f9784ec 100644 --- a/mcon/U/d_isascii.U +++ b/mcon/U/d_isascii.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -24,7 +24,7 @@ ?S: which indicates to the C program that isascii() is available. ?S:. ?C:HAS_ISASCII: -?C: This manifest constant lets the C program know that isascii +?C: This manifest constant lets the C program know that isascii ?C: is available. ?C:. ?H:#$d_isascii HAS_ISASCII /**/ diff --git a/mcon/U/d_itimer.U b/mcon/U/d_itimer.U index b470ed2..b7018a1 100644 --- a/mcon/U/d_itimer.U +++ b/mcon/U/d_itimer.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_keepsig.U b/mcon/U/d_keepsig.U index 97cf93e..cac7db1 100644 --- a/mcon/U/d_keepsig.U +++ b/mcon/U/d_keepsig.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_killpg.U b/mcon/U/d_killpg.U index d92dc7e..77b64ed 100644 --- a/mcon/U/d_killpg.U +++ b/mcon/U/d_killpg.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_link.U b/mcon/U/d_link.U index 01d3271..5848bae 100644 --- a/mcon/U/d_link.U +++ b/mcon/U/d_link.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_linuxstd.U b/mcon/U/d_linuxstd.U index 74c6226..547755d 100644 --- a/mcon/U/d_linuxstd.U +++ b/mcon/U/d_linuxstd.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_locconv.U b/mcon/U/d_locconv.U index 416f487..e06c152 100644 --- a/mcon/U/d_locconv.U +++ b/mcon/U/d_locconv.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_lockf.U b/mcon/U/d_lockf.U index b637d51..1e71ceb 100644 --- a/mcon/U/d_lockf.U +++ b/mcon/U/d_lockf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_lstat.U b/mcon/U/d_lstat.U index 96f739f..d9a4c7c 100644 --- a/mcon/U/d_lstat.U +++ b/mcon/U/d_lstat.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_mblen.U b/mcon/U/d_mblen.U index f296018..59eeed5 100644 --- a/mcon/U/d_mblen.U +++ b/mcon/U/d_mblen.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_mbstowcs.U b/mcon/U/d_mbstowcs.U index 38d639e..4e2a67b 100644 --- a/mcon/U/d_mbstowcs.U +++ b/mcon/U/d_mbstowcs.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_mbtowc.U b/mcon/U/d_mbtowc.U index 6814a6a..ae0f12e 100644 --- a/mcon/U/d_mbtowc.U +++ b/mcon/U/d_mbtowc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_memalign.U b/mcon/U/d_memalign.U index 29cb7da..86abc55 100644 --- a/mcon/U/d_memalign.U +++ b/mcon/U/d_memalign.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_memccpy.U b/mcon/U/d_memccpy.U index a79bc3e..27f293c 100644 --- a/mcon/U/d_memccpy.U +++ b/mcon/U/d_memccpy.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_memchr.U b/mcon/U/d_memchr.U index 86919d4..d9c2c8d 100644 --- a/mcon/U/d_memchr.U +++ b/mcon/U/d_memchr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_memcmp.U b/mcon/U/d_memcmp.U index 3c6bce7..127f6bf 100644 --- a/mcon/U/d_memcmp.U +++ b/mcon/U/d_memcmp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_memcpy.U b/mcon/U/d_memcpy.U index a84d37a..1d5cca1 100644 --- a/mcon/U/d_memcpy.U +++ b/mcon/U/d_memcpy.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_memmove.U b/mcon/U/d_memmove.U index 47dcbe5..c74a5c7 100644 --- a/mcon/U/d_memmove.U +++ b/mcon/U/d_memmove.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_mempcpy.U b/mcon/U/d_mempcpy.U index 63ccf51..fa65fc9 100644 --- a/mcon/U/d_mempcpy.U +++ b/mcon/U/d_mempcpy.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_memset.U b/mcon/U/d_memset.U index a36f354..82e80ca 100644 --- a/mcon/U/d_memset.U +++ b/mcon/U/d_memset.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_mkdir.U b/mcon/U/d_mkdir.U index b614e04..ddbb433 100644 --- a/mcon/U/d_mkdir.U +++ b/mcon/U/d_mkdir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_mkfifo.U b/mcon/U/d_mkfifo.U index 6fe53ba..d73a93e 100644 --- a/mcon/U/d_mkfifo.U +++ b/mcon/U/d_mkfifo.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Original Author: Andy Dougherty ?RCS: ?RCS: $Log: d_mkfifo.U,v $ diff --git a/mcon/U/d_mktime.U b/mcon/U/d_mktime.U index f5a0a36..5cd11a3 100644 --- a/mcon/U/d_mktime.U +++ b/mcon/U/d_mktime.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_mmap.U b/mcon/U/d_mmap.U index 65c2b1b..b2f671f 100644 --- a/mcon/U/d_mmap.U +++ b/mcon/U/d_mmap.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_msem_lck.U b/mcon/U/d_msem_lck.U index 4009d0d..f35de33 100644 --- a/mcon/U/d_msem_lck.U +++ b/mcon/U/d_msem_lck.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_msg.U b/mcon/U/d_msg.U index 5afeadd..478d856 100644 --- a/mcon/U/d_msg.U +++ b/mcon/U/d_msg.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_msgctl.U b/mcon/U/d_msgctl.U index b3b9293..a18e263 100644 --- a/mcon/U/d_msgctl.U +++ b/mcon/U/d_msgctl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_msgget.U b/mcon/U/d_msgget.U index d6d2368..9ff25b1 100644 --- a/mcon/U/d_msgget.U +++ b/mcon/U/d_msgget.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_msgrcv.U b/mcon/U/d_msgrcv.U index 3bfe165..f5195e6 100644 --- a/mcon/U/d_msgrcv.U +++ b/mcon/U/d_msgrcv.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_msgsnd.U b/mcon/U/d_msgsnd.U index 0ab1f9d..b40c5ef 100644 --- a/mcon/U/d_msgsnd.U +++ b/mcon/U/d_msgsnd.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_msync.U b/mcon/U/d_msync.U index 3aa39cd..2d13d74 100644 --- a/mcon/U/d_msync.U +++ b/mcon/U/d_msync.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_munmap.U b/mcon/U/d_munmap.U index 01292b2..f8e01a6 100644 --- a/mcon/U/d_munmap.U +++ b/mcon/U/d_munmap.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_newsadm.U b/mcon/U/d_newsadm.U index 1ffa721..a5ae103 100644 --- a/mcon/U/d_newsadm.U +++ b/mcon/U/d_newsadm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_nice.U b/mcon/U/d_nice.U index c618d5f..aacb448 100644 --- a/mcon/U/d_nice.U +++ b/mcon/U/d_nice.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_nolnbuf.U b/mcon/U/d_nolnbuf.U index b69cec3..330a643 100644 --- a/mcon/U/d_nolnbuf.U +++ b/mcon/U/d_nolnbuf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_normsig.U b/mcon/U/d_normsig.U index 0c1c4dc..f37fcfe 100644 --- a/mcon/U/d_normsig.U +++ b/mcon/U/d_normsig.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_open3.U b/mcon/U/d_open3.U index e59b137..a5fa847 100644 --- a/mcon/U/d_open3.U +++ b/mcon/U/d_open3.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_openat.U b/mcon/U/d_openat.U index 8565ee5..47beb25 100644 --- a/mcon/U/d_openat.U +++ b/mcon/U/d_openat.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_passwd.U b/mcon/U/d_passwd.U index 47c9a53..c9e2418 100644 --- a/mcon/U/d_passwd.U +++ b/mcon/U/d_passwd.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_pathconf.U b/mcon/U/d_pathconf.U index 19bddeb..02b7e52 100644 --- a/mcon/U/d_pathconf.U +++ b/mcon/U/d_pathconf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_pause.U b/mcon/U/d_pause.U index f34c7b7..9acd60d 100644 --- a/mcon/U/d_pause.U +++ b/mcon/U/d_pause.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_perror.U b/mcon/U/d_perror.U index 990acb0..50b0aa0 100644 --- a/mcon/U/d_perror.U +++ b/mcon/U/d_perror.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_pidcheck.U b/mcon/U/d_pidcheck.U index a65c6f0..8fedf85 100644 --- a/mcon/U/d_pidcheck.U +++ b/mcon/U/d_pidcheck.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_pipe.U b/mcon/U/d_pipe.U index 2aa3b51..004905f 100644 --- a/mcon/U/d_pipe.U +++ b/mcon/U/d_pipe.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_pipe2.U b/mcon/U/d_pipe2.U index df03115..d64c703 100644 --- a/mcon/U/d_pipe2.U +++ b/mcon/U/d_pipe2.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2015, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_poll.U b/mcon/U/d_poll.U index fb0e2bd..39d6b40 100644 --- a/mcon/U/d_poll.U +++ b/mcon/U/d_poll.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_popen.U b/mcon/U/d_popen.U index 69d774c..4e5ff55 100644 --- a/mcon/U/d_popen.U +++ b/mcon/U/d_popen.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_portable.U b/mcon/U/d_portable.U index c906329..f052d65 100644 --- a/mcon/U/d_portable.U +++ b/mcon/U/d_portable.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_pread.U b/mcon/U/d_pread.U index 7ff4305..60ab4d9 100644 --- a/mcon/U/d_pread.U +++ b/mcon/U/d_pread.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_preadv.U b/mcon/U/d_preadv.U index 5abc0c5..4261454 100644 --- a/mcon/U/d_preadv.U +++ b/mcon/U/d_preadv.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_psignal.U b/mcon/U/d_psignal.U index f33eb9b..6cd2467 100644 --- a/mcon/U/d_psignal.U +++ b/mcon/U/d_psignal.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_pwrite.U b/mcon/U/d_pwrite.U index 5c4c298..f811308 100644 --- a/mcon/U/d_pwrite.U +++ b/mcon/U/d_pwrite.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_pwritev.U b/mcon/U/d_pwritev.U index da97b51..6612cf7 100644 --- a/mcon/U/d_pwritev.U +++ b/mcon/U/d_pwritev.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_raster.U b/mcon/U/d_raster.U index 36a6136..01702fb 100644 --- a/mcon/U/d_raster.U +++ b/mcon/U/d_raster.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_rdchk.U b/mcon/U/d_rdchk.U index 99aa80c..12e24ff 100644 --- a/mcon/U/d_rdchk.U +++ b/mcon/U/d_rdchk.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_readdir.U b/mcon/U/d_readdir.U index f1e1dee..2db9d28 100644 --- a/mcon/U/d_readdir.U +++ b/mcon/U/d_readdir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_readlink.U b/mcon/U/d_readlink.U index 7166f5e..e4e6dc6 100644 --- a/mcon/U/d_readlink.U +++ b/mcon/U/d_readlink.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_regcmp.U b/mcon/U/d_regcmp.U index 3ff0b8e..891ccf5 100644 --- a/mcon/U/d_regcmp.U +++ b/mcon/U/d_regcmp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_regcomp.U b/mcon/U/d_regcomp.U index 30c8ef3..885b65e 100644 --- a/mcon/U/d_regcomp.U +++ b/mcon/U/d_regcomp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_rename.U b/mcon/U/d_rename.U index e99a0af..445ae43 100644 --- a/mcon/U/d_rename.U +++ b/mcon/U/d_rename.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_rmdir.U b/mcon/U/d_rmdir.U index 36fb822..3a4ca4e 100644 --- a/mcon/U/d_rmdir.U +++ b/mcon/U/d_rmdir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_rusage.U b/mcon/U/d_rusage.U index 7abea03..1864872 100644 --- a/mcon/U/d_rusage.U +++ b/mcon/U/d_rusage.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_safebcpy.U b/mcon/U/d_safebcpy.U index 2db1371..68b921e 100644 --- a/mcon/U/d_safebcpy.U +++ b/mcon/U/d_safebcpy.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -80,7 +80,7 @@ int len; int off; int align; -?X: Copy "abcde..." string to char abc[] so that gcc doesn't +?X: Copy "abcde..." string to char abc[] so that gcc doesn't ?X: try to store the string in read-only memory. bcopy("abcdefghijklmnopqrstuvwxyz0123456789", abc, 36); diff --git a/mcon/U/d_safemcpy.U b/mcon/U/d_safemcpy.U index bf8c6e1..160aa46 100644 --- a/mcon/U/d_safemcpy.U +++ b/mcon/U/d_safemcpy.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sanemcmp.U b/mcon/U/d_sanemcmp.U index 06fa207..f87652c 100644 --- a/mcon/U/d_sanemcmp.U +++ b/mcon/U/d_sanemcmp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sbrk.U b/mcon/U/d_sbrk.U index 849d730..0bb14f2 100644 --- a/mcon/U/d_sbrk.U +++ b/mcon/U/d_sbrk.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_scandir.U b/mcon/U/d_scandir.U index 92501f2..4c2072d 100644 --- a/mcon/U/d_scandir.U +++ b/mcon/U/d_scandir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_scannl.U b/mcon/U/d_scannl.U index eaf81d1..4f31596 100644 --- a/mcon/U/d_scannl.U +++ b/mcon/U/d_scannl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sched_yield.U b/mcon/U/d_sched_yield.U index 0627e3d..834f6ac 100644 --- a/mcon/U/d_sched_yield.U +++ b/mcon/U/d_sched_yield.U @@ -1,5 +1,5 @@ ?RCS: Copyright (c) 2012, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_scorfl.U b/mcon/U/d_scorfl.U index baf0add..d53c00f 100644 --- a/mcon/U/d_scorfl.U +++ b/mcon/U/d_scorfl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_select.U b/mcon/U/d_select.U index 2606650..83216a7 100644 --- a/mcon/U/d_select.U +++ b/mcon/U/d_select.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sem.U b/mcon/U/d_sem.U index 765df1a..14690c2 100644 --- a/mcon/U/d_sem.U +++ b/mcon/U/d_sem.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_semctl.U b/mcon/U/d_semctl.U index d280dfb..13b27f7 100644 --- a/mcon/U/d_semctl.U +++ b/mcon/U/d_semctl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_semget.U b/mcon/U/d_semget.U index 28fa697..bf93fe3 100644 --- a/mcon/U/d_semget.U +++ b/mcon/U/d_semget.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_semop.U b/mcon/U/d_semop.U index 092ec2a..968bebd 100644 --- a/mcon/U/d_semop.U +++ b/mcon/U/d_semop.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setegid.U b/mcon/U/d_setegid.U index 004b32b..b05ed5e 100644 --- a/mcon/U/d_setegid.U +++ b/mcon/U/d_setegid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_seteuid.U b/mcon/U/d_seteuid.U index 0ff6010..2a86744 100644 --- a/mcon/U/d_seteuid.U +++ b/mcon/U/d_seteuid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setgrps.U b/mcon/U/d_setgrps.U index 814c89e..bbbbef1 100644 --- a/mcon/U/d_setgrps.U +++ b/mcon/U/d_setgrps.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setlnbuf.U b/mcon/U/d_setlnbuf.U index 337e37f..f91fd5b 100644 --- a/mcon/U/d_setlnbuf.U +++ b/mcon/U/d_setlnbuf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setlocale.U b/mcon/U/d_setlocale.U index 14f2ac2..1533c12 100644 --- a/mcon/U/d_setlocale.U +++ b/mcon/U/d_setlocale.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setpgid.U b/mcon/U/d_setpgid.U index e62e147..26994ce 100644 --- a/mcon/U/d_setpgid.U +++ b/mcon/U/d_setpgid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setpgrp.U b/mcon/U/d_setpgrp.U index 34f2574..2d47d41 100644 --- a/mcon/U/d_setpgrp.U +++ b/mcon/U/d_setpgrp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setpgrp2.U b/mcon/U/d_setpgrp2.U index f2949f8..25647a3 100644 --- a/mcon/U/d_setpgrp2.U +++ b/mcon/U/d_setpgrp2.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setprior.U b/mcon/U/d_setprior.U index 7cda4f3..c03ebdc 100644 --- a/mcon/U/d_setprior.U +++ b/mcon/U/d_setprior.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setregid.U b/mcon/U/d_setregid.U index 84c2735..906e731 100644 --- a/mcon/U/d_setregid.U +++ b/mcon/U/d_setregid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setreuid.U b/mcon/U/d_setreuid.U index 68c01ae..b25b773 100644 --- a/mcon/U/d_setreuid.U +++ b/mcon/U/d_setreuid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setrgid.U b/mcon/U/d_setrgid.U index d828024..12c1164 100644 --- a/mcon/U/d_setrgid.U +++ b/mcon/U/d_setrgid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setrlimit.U b/mcon/U/d_setrlimit.U index e979af6..3e69573 100644 --- a/mcon/U/d_setrlimit.U +++ b/mcon/U/d_setrlimit.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setruid.U b/mcon/U/d_setruid.U index 6450f32..e4c07f6 100644 --- a/mcon/U/d_setruid.U +++ b/mcon/U/d_setruid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_setsid.U b/mcon/U/d_setsid.U index 4e3e98f..c7ccf16 100644 --- a/mcon/U/d_setsid.U +++ b/mcon/U/d_setsid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sgndchr.U b/mcon/U/d_sgndchr.U index c1c9f28..b023f5c 100644 --- a/mcon/U/d_sgndchr.U +++ b/mcon/U/d_sgndchr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_shm.U b/mcon/U/d_shm.U index 537db51..8a403b4 100644 --- a/mcon/U/d_shm.U +++ b/mcon/U/d_shm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_shmat.U b/mcon/U/d_shmat.U index be8b4bd..bf37e88 100644 --- a/mcon/U/d_shmat.U +++ b/mcon/U/d_shmat.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -32,7 +32,7 @@ ?S: It can be 'void *' or 'char *'. ?S:. ?S:d_shmatprototype: -?S: This variable conditionally defines the HAS_SHMAT_PROTOTYPE +?S: This variable conditionally defines the HAS_SHMAT_PROTOTYPE ?S: symbol, which indicates that sys/shm.h has a prototype for ?S: shmat. ?S:. diff --git a/mcon/U/d_shmctl.U b/mcon/U/d_shmctl.U index 33ec1ef..555d4af 100644 --- a/mcon/U/d_shmctl.U +++ b/mcon/U/d_shmctl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_shmdt.U b/mcon/U/d_shmdt.U index aea9dfc..6a243b1 100644 --- a/mcon/U/d_shmdt.U +++ b/mcon/U/d_shmdt.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_shmget.U b/mcon/U/d_shmget.U index e7e0e5a..4262dbf 100644 --- a/mcon/U/d_shmget.U +++ b/mcon/U/d_shmget.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sigaction.U b/mcon/U/d_sigaction.U index 2b5205a..ffd58da 100644 --- a/mcon/U/d_sigaction.U +++ b/mcon/U/d_sigaction.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sigaltstack.U b/mcon/U/d_sigaltstack.U index e9e4891..6bfb22d 100644 --- a/mcon/U/d_sigaltstack.U +++ b/mcon/U/d_sigaltstack.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2013, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sigblock.U b/mcon/U/d_sigblock.U index acacafc..1ab7f3a 100644 --- a/mcon/U/d_sigblock.U +++ b/mcon/U/d_sigblock.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sighold.U b/mcon/U/d_sighold.U index 0a5d452..7fdc2d2 100644 --- a/mcon/U/d_sighold.U +++ b/mcon/U/d_sighold.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_siglist.U b/mcon/U/d_siglist.U index 05dd430..f70f5a7 100644 --- a/mcon/U/d_siglist.U +++ b/mcon/U/d_siglist.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sigprocmask.U b/mcon/U/d_sigprocmask.U index 08febe0..9c68b26 100644 --- a/mcon/U/d_sigprocmask.U +++ b/mcon/U/d_sigprocmask.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sigsetjmp.U b/mcon/U/d_sigsetjmp.U index 82a8b49..99f75e2 100644 --- a/mcon/U/d_sigsetjmp.U +++ b/mcon/U/d_sigsetjmp.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sigsetmk.U b/mcon/U/d_sigsetmk.U index 94dd348..48a603e 100644 --- a/mcon/U/d_sigsetmk.U +++ b/mcon/U/d_sigsetmk.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sigvec.U b/mcon/U/d_sigvec.U index 2ee4351..57c13ca 100644 --- a/mcon/U/d_sigvec.U +++ b/mcon/U/d_sigvec.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sjis2jis.U b/mcon/U/d_sjis2jis.U index 9da483f..15203df 100644 --- a/mcon/U/d_sjis2jis.U +++ b/mcon/U/d_sjis2jis.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_socket.U b/mcon/U/d_socket.U index 006e635..3a18daf 100644 --- a/mcon/U/d_socket.U +++ b/mcon/U/d_socket.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_speedopt.U b/mcon/U/d_speedopt.U index e22b80e..e1df8d7 100644 --- a/mcon/U/d_speedopt.U +++ b/mcon/U/d_speedopt.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_stat.U b/mcon/U/d_stat.U index 46103e3..c128284 100644 --- a/mcon/U/d_stat.U +++ b/mcon/U/d_stat.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_statblks.U b/mcon/U/d_statblks.U index 65afd5f..1391ef1 100644 --- a/mcon/U/d_statblks.U +++ b/mcon/U/d_statblks.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_stdstdio.U b/mcon/U/d_stdstdio.U index 4ca5767..e46cee1 100644 --- a/mcon/U/d_stdstdio.U +++ b/mcon/U/d_stdstdio.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strccmp.U b/mcon/U/d_strccmp.U index 01a1634..cf70f97 100644 --- a/mcon/U/d_strccmp.U +++ b/mcon/U/d_strccmp.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: d_strccmp.U,v $ ?RCS: Revision 3.0.1.2 1994/05/06 14:54:34 ram ?RCS: patch23: fixed a typo (WED) diff --git a/mcon/U/d_strchr.U b/mcon/U/d_strchr.U index 858e78f..ddc44b1 100644 --- a/mcon/U/d_strchr.U +++ b/mcon/U/d_strchr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strcoll.U b/mcon/U/d_strcoll.U index aef05ff..84fc4b3 100644 --- a/mcon/U/d_strcoll.U +++ b/mcon/U/d_strcoll.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strcspn.U b/mcon/U/d_strcspn.U index fd7109b..ed8c439 100644 --- a/mcon/U/d_strcspn.U +++ b/mcon/U/d_strcspn.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strctcpy.U b/mcon/U/d_strctcpy.U index b7fb222..5fbe8c9 100644 --- a/mcon/U/d_strctcpy.U +++ b/mcon/U/d_strctcpy.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strdup.U b/mcon/U/d_strdup.U index 4472c77..314c1b6 100644 --- a/mcon/U/d_strdup.U +++ b/mcon/U/d_strdup.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strerror.U b/mcon/U/d_strerror.U index 9a38679..774ef1a 100644 --- a/mcon/U/d_strerror.U +++ b/mcon/U/d_strerror.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strftime.U b/mcon/U/d_strftime.U index ba4fe37..3c0a777 100644 --- a/mcon/U/d_strftime.U +++ b/mcon/U/d_strftime.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strstr.U b/mcon/U/d_strstr.U index 921378a..8cf8f7a 100644 --- a/mcon/U/d_strstr.U +++ b/mcon/U/d_strstr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strtod.U b/mcon/U/d_strtod.U index f697f56..effb49c 100644 --- a/mcon/U/d_strtod.U +++ b/mcon/U/d_strtod.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strtok.U b/mcon/U/d_strtok.U index 0adac25..fc6a8ec 100644 --- a/mcon/U/d_strtok.U +++ b/mcon/U/d_strtok.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strtol.U b/mcon/U/d_strtol.U index 1f22bdd..15a1965 100644 --- a/mcon/U/d_strtol.U +++ b/mcon/U/d_strtol.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strtoul.U b/mcon/U/d_strtoul.U index b78fc6e..83f882a 100644 --- a/mcon/U/d_strtoul.U +++ b/mcon/U/d_strtoul.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_strxfrm.U b/mcon/U/d_strxfrm.U index 8a09573..f94a7e9 100644 --- a/mcon/U/d_strxfrm.U +++ b/mcon/U/d_strxfrm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_su_chown.U b/mcon/U/d_su_chown.U index 01abb17..2c9c451 100644 --- a/mcon/U/d_su_chown.U +++ b/mcon/U/d_su_chown.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_symlink.U b/mcon/U/d_symlink.U index 0c59a61..bd10478 100644 --- a/mcon/U/d_symlink.U +++ b/mcon/U/d_symlink.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_syscall.U b/mcon/U/d_syscall.U index 1fb0312..868f25b 100644 --- a/mcon/U/d_syscall.U +++ b/mcon/U/d_syscall.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_sysconf.U b/mcon/U/d_sysconf.U index 637be6c..f02d7cc 100644 --- a/mcon/U/d_sysconf.U +++ b/mcon/U/d_sysconf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_syslog.U b/mcon/U/d_syslog.U index 09ec53c..e5e8b75 100644 --- a/mcon/U/d_syslog.U +++ b/mcon/U/d_syslog.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_system.U b/mcon/U/d_system.U index a44350e..f803f01 100644 --- a/mcon/U/d_system.U +++ b/mcon/U/d_system.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_table.U b/mcon/U/d_table.U index e01c96e..d5a32f9 100644 --- a/mcon/U/d_table.U +++ b/mcon/U/d_table.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_tcgtpgrp.U b/mcon/U/d_tcgtpgrp.U index 3bf0a7e..5800911 100644 --- a/mcon/U/d_tcgtpgrp.U +++ b/mcon/U/d_tcgtpgrp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_tcstpgrp.U b/mcon/U/d_tcstpgrp.U index f48c488..5c0dbbd 100644 --- a/mcon/U/d_tcstpgrp.U +++ b/mcon/U/d_tcstpgrp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_time.U b/mcon/U/d_time.U index d09c902..b783560 100644 --- a/mcon/U/d_time.U +++ b/mcon/U/d_time.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_times.U b/mcon/U/d_times.U index 3e9217c..fcaa405 100644 --- a/mcon/U/d_times.U +++ b/mcon/U/d_times.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_tminsys.U b/mcon/U/d_tminsys.U index 001bf6a..60fc95a 100644 --- a/mcon/U/d_tminsys.U +++ b/mcon/U/d_tminsys.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_truncate.U b/mcon/U/d_truncate.U index 85e1292..31a7419 100644 --- a/mcon/U/d_truncate.U +++ b/mcon/U/d_truncate.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_ttyname.U b/mcon/U/d_ttyname.U index f6235d3..06f6de0 100644 --- a/mcon/U/d_ttyname.U +++ b/mcon/U/d_ttyname.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi ?RCS: Copyright (c) 2011, Christian Biere -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_tzmin.U b/mcon/U/d_tzmin.U index 1f2a313..7a123f7 100644 --- a/mcon/U/d_tzmin.U +++ b/mcon/U/d_tzmin.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_tzname.U b/mcon/U/d_tzname.U index d47c47e..08ebc73 100644 --- a/mcon/U/d_tzname.U +++ b/mcon/U/d_tzname.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_ulimit.U b/mcon/U/d_ulimit.U index 6cac78b..66eb545 100644 --- a/mcon/U/d_ulimit.U +++ b/mcon/U/d_ulimit.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_umask.U b/mcon/U/d_umask.U index c0b1d4a..c5867f5 100644 --- a/mcon/U/d_umask.U +++ b/mcon/U/d_umask.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_usendir.U b/mcon/U/d_usendir.U index 3e71b8e..4ebf021 100644 --- a/mcon/U/d_usendir.U +++ b/mcon/U/d_usendir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_usleep.U b/mcon/U/d_usleep.U index 9cfe0a1..f9052a5 100644 --- a/mcon/U/d_usleep.U +++ b/mcon/U/d_usleep.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_uwait.U b/mcon/U/d_uwait.U index 7c824be..3890c3f 100644 --- a/mcon/U/d_uwait.U +++ b/mcon/U/d_uwait.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_vfork.U b/mcon/U/d_vfork.U index 1c35462..b9c4e71 100644 --- a/mcon/U/d_vfork.U +++ b/mcon/U/d_vfork.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_voidsig.U b/mcon/U/d_voidsig.U index 78a5034..d00cec1 100644 --- a/mcon/U/d_voidsig.U +++ b/mcon/U/d_voidsig.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_volatile.U b/mcon/U/d_volatile.U index 7f534ae..be17638 100644 --- a/mcon/U/d_volatile.U +++ b/mcon/U/d_volatile.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_vprintf.U b/mcon/U/d_vprintf.U index 9bb76fc..f7d8c73 100644 --- a/mcon/U/d_vprintf.U +++ b/mcon/U/d_vprintf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_wait3.U b/mcon/U/d_wait3.U index 59b716d..db57bd2 100644 --- a/mcon/U/d_wait3.U +++ b/mcon/U/d_wait3.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_wait4.U b/mcon/U/d_wait4.U index 87eeaf3..64e1d02 100644 --- a/mcon/U/d_wait4.U +++ b/mcon/U/d_wait4.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_waitpid.U b/mcon/U/d_waitpid.U index 67eef64..2b31e76 100644 --- a/mcon/U/d_waitpid.U +++ b/mcon/U/d_waitpid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_wcstombs.U b/mcon/U/d_wcstombs.U index 143413e..516dbc2 100644 --- a/mcon/U/d_wcstombs.U +++ b/mcon/U/d_wcstombs.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_wctomb.U b/mcon/U/d_wctomb.U index ab53248..126bf87 100644 --- a/mcon/U/d_wctomb.U +++ b/mcon/U/d_wctomb.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_wifstat.U b/mcon/U/d_wifstat.U index df197fc..5522942 100644 --- a/mcon/U/d_wifstat.U +++ b/mcon/U/d_wifstat.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_xdrs.U b/mcon/U/d_xdrs.U index e284117..bd727e8 100644 --- a/mcon/U/d_xdrs.U +++ b/mcon/U/d_xdrs.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/defeditor.U b/mcon/U/defeditor.U index d308d2e..d4a2dde 100644 --- a/mcon/U/defeditor.U +++ b/mcon/U/defeditor.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/doublesize.U b/mcon/U/doublesize.U index 5785535..15fc4cf 100644 --- a/mcon/U/doublesize.U +++ b/mcon/U/doublesize.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/ebcdic.U b/mcon/U/ebcdic.U index 43a21ef..87e875a 100644 --- a/mcon/U/ebcdic.U +++ b/mcon/U/ebcdic.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Copyright (c) 1998 Andy Dougherty ?RCS: ?RCS: Original author Jarkko Hietaniemi diff --git a/mcon/U/errnolist.U b/mcon/U/errnolist.U index 0b6ddd9..1e466b0 100644 --- a/mcon/U/errnolist.U +++ b/mcon/U/errnolist.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -24,18 +24,18 @@ ?S: definition of the sys_errnolist array, if the C library ?S: doesn't provide it already. Otherwise, its value is empty. ?S: The following lines should be included in your Makefile.SH: -?S: +?S: ?S: case "$errnolist" in ?S: '') ;; ?S: *) ?S: $spitshell >>Makefile < ?RCS: ?RCS: $Log: groupstype.U,v $ @@ -22,7 +22,7 @@ ?MAKE: -pick add $@ %< ?INIT:groupstype='' ?S:groupstype: -?S: This variable defines Groups_t to be something like gid_t, int, +?S: This variable defines Groups_t to be something like gid_t, int, ?S: ushort, or whatever type is used for the second argument to ?S: getgroups() and setgroups(). Usually, this is the same as ?S: gidtype (gid_t), but sometimes it isn't. @@ -31,8 +31,8 @@ ?C: This symbol holds the type used for the second argument to ?C: getgroups() and setgroups(). Usually, this is the same as ?C: gidtype (gid_t) , but sometimes it isn't. -?C: It can be int, ushort, gid_t, etc... -?C: It may be necessary to include to get any +?C: It can be int, ushort, gid_t, etc... +?C: It may be necessary to include to get any ?C: typedef'ed information. This is only required if you have ?C: getgroups() or setgroups().. ?C:. diff --git a/mcon/U/h_fcntl.U b/mcon/U/h_fcntl.U index fb693e0..db958ea 100644 --- a/mcon/U/h_fcntl.U +++ b/mcon/U/h_fcntl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/h_sysfile.U b/mcon/U/h_sysfile.U index aa60d1a..1466676 100644 --- a/mcon/U/h_sysfile.U +++ b/mcon/U/h_sysfile.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_alloca.U b/mcon/U/i_alloca.U index 200185b..038b087 100644 --- a/mcon/U/i_alloca.U +++ b/mcon/U/i_alloca.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_arpainet.U b/mcon/U/i_arpainet.U index 4f15f76..f3a322e 100644 --- a/mcon/U/i_arpainet.U +++ b/mcon/U/i_arpainet.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_db.U b/mcon/U/i_db.U index a69383c..df11bbc 100644 --- a/mcon/U/i_db.U +++ b/mcon/U/i_db.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_dbm.U b/mcon/U/i_dbm.U index 0697238..e59737e 100644 --- a/mcon/U/i_dbm.U +++ b/mcon/U/i_dbm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -44,7 +44,7 @@ ?T:d_dbmclose ?LINT:set i_dbm i_rpcsvcdbm : see if dbm.h is available -?X: We might just have the header, not the library. +?X: We might just have the header, not the library. ?X: We look for dbmclose() rather than dbminit() because ?X: some versions of SCO Unix have -ldbm, but are missing dbmclose(). -- ADO ?X: Some System V systems have instead of . diff --git a/mcon/U/i_dirent.U b/mcon/U/i_dirent.U index 7100ef7..16836dc 100644 --- a/mcon/U/i_dirent.U +++ b/mcon/U/i_dirent.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -87,7 +87,7 @@ fi set i_dirent eval $setvar -?X: Use struct dirent or struct direct? If we're using dirent.h, +?X: Use struct dirent or struct direct? If we're using dirent.h, ?X: it's probably struct dirent, but apparently not always. ?X: Assume $xinc still contains the name of the header file we're using. @if direntrytype || Direntry_t diff --git a/mcon/U/i_dld.U b/mcon/U/i_dld.U index c62a986..cd2e3b1 100644 --- a/mcon/U/i_dld.U +++ b/mcon/U/i_dld.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_dlfcn.U b/mcon/U/i_dlfcn.U index 32fe73b..a378c7f 100644 --- a/mcon/U/i_dlfcn.U +++ b/mcon/U/i_dlfcn.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_execinfo.U b/mcon/U/i_execinfo.U index f9b16a7..e6322bc 100644 --- a/mcon/U/i_execinfo.U +++ b/mcon/U/i_execinfo.U @@ -1,7 +1,7 @@ ?RCS: $Id: i_execinfo.U 34 2010-11-27 11:55:39Z rmanfredi $ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_fcntl.U b/mcon/U/i_fcntl.U index 72f31fa..d7b3d24 100644 --- a/mcon/U/i_fcntl.U +++ b/mcon/U/i_fcntl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_float.U b/mcon/U/i_float.U index 2e4867f..73951bb 100644 --- a/mcon/U/i_float.U +++ b/mcon/U/i_float.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_gdbm.U b/mcon/U/i_gdbm.U index 20cfd08..69755ba 100644 --- a/mcon/U/i_gdbm.U +++ b/mcon/U/i_gdbm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_grp.U b/mcon/U/i_grp.U index 5512415..4d6ba4f 100644 --- a/mcon/U/i_grp.U +++ b/mcon/U/i_grp.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_inttypes.U b/mcon/U/i_inttypes.U index 3969834..fb02d0a 100644 --- a/mcon/U/i_inttypes.U +++ b/mcon/U/i_inttypes.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_limits.U b/mcon/U/i_limits.U index a0276cb..2b9a998 100644 --- a/mcon/U/i_limits.U +++ b/mcon/U/i_limits.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_linux_netlink.U b/mcon/U/i_linux_netlink.U index 28dfbf6..37a4790 100644 --- a/mcon/U/i_linux_netlink.U +++ b/mcon/U/i_linux_netlink.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_linux_rtnetlink.U b/mcon/U/i_linux_rtnetlink.U index 8bd11b9..8d57ced 100644 --- a/mcon/U/i_linux_rtnetlink.U +++ b/mcon/U/i_linux_rtnetlink.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_locale.U b/mcon/U/i_locale.U index b4f2bf8..deeeb44 100644 --- a/mcon/U/i_locale.U +++ b/mcon/U/i_locale.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_malloc.U b/mcon/U/i_malloc.U index 88917fe..0948c17 100644 --- a/mcon/U/i_malloc.U +++ b/mcon/U/i_malloc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_math.U b/mcon/U/i_math.U index 14e85b0..057c3e9 100644 --- a/mcon/U/i_math.U +++ b/mcon/U/i_math.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_memory.U b/mcon/U/i_memory.U index 99b5d3c..952e311 100644 --- a/mcon/U/i_memory.U +++ b/mcon/U/i_memory.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -36,7 +36,7 @@ ?LINT:set i_memory ?X: ?X: Unfortunately, the definitions of memory functions sometimes -?X: conflict with those in . We'll assume that if +?X: conflict with those in . We'll assume that if ?X: contains memcpy, then we don't need memory.h ?X: : see if memory.h is available. diff --git a/mcon/U/i_mswsock.U b/mcon/U/i_mswsock.U index 6341def..2622f32 100644 --- a/mcon/U/i_mswsock.U +++ b/mcon/U/i_mswsock.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2010 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_ndbm.U b/mcon/U/i_ndbm.U index d760c08..ac8f8e9 100644 --- a/mcon/U/i_ndbm.U +++ b/mcon/U/i_ndbm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_neterrno.U b/mcon/U/i_neterrno.U index af83e24..a0003e6 100644 --- a/mcon/U/i_neterrno.U +++ b/mcon/U/i_neterrno.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -28,7 +28,7 @@ ?S: be included. ?S:. ?C:I_NET_ERRNO: -?C: This symbol, if defined, indicates that exists and +?C: This symbol, if defined, indicates that exists and ?C: should be included. ?C:. ?H:#$i_neterrno I_NET_ERRNO /**/ diff --git a/mcon/U/i_niin.U b/mcon/U/i_niin.U index c84559d..e24cc4a 100644 --- a/mcon/U/i_niin.U +++ b/mcon/U/i_niin.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_poll.U b/mcon/U/i_poll.U index ecba33f..90a2c7a 100644 --- a/mcon/U/i_poll.U +++ b/mcon/U/i_poll.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_pthread.U b/mcon/U/i_pthread.U index 6cd0779..8f14696 100644 --- a/mcon/U/i_pthread.U +++ b/mcon/U/i_pthread.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2011, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_pwd.U b/mcon/U/i_pwd.U index 31b9483..8ee4156 100644 --- a/mcon/U/i_pwd.U +++ b/mcon/U/i_pwd.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_regex.U b/mcon/U/i_regex.U index ab33025..81f2311 100644 --- a/mcon/U/i_regex.U +++ b/mcon/U/i_regex.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sched.U b/mcon/U/i_sched.U index 84e58d5..de5cfa4 100644 --- a/mcon/U/i_sched.U +++ b/mcon/U/i_sched.U @@ -1,5 +1,5 @@ ?RCS: Copyright (c) 2012, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sfio.U b/mcon/U/i_sfio.U index b6e917e..84730de 100644 --- a/mcon/U/i_sfio.U +++ b/mcon/U/i_sfio.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_stddef.U b/mcon/U/i_stddef.U index 8244f4e..0d9f1d3 100644 --- a/mcon/U/i_stddef.U +++ b/mcon/U/i_stddef.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_stdlib.U b/mcon/U/i_stdlib.U index f203c33..0e41f5e 100644 --- a/mcon/U/i_stdlib.U +++ b/mcon/U/i_stdlib.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_string.U b/mcon/U/i_string.U index 6db514c..e43a62a 100644 --- a/mcon/U/i_string.U +++ b/mcon/U/i_string.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysdir.U b/mcon/U/i_sysdir.U index 9b57de6..529bf15 100644 --- a/mcon/U/i_sysdir.U +++ b/mcon/U/i_sysdir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysfile.U b/mcon/U/i_sysfile.U index 488c3b6..62ea1e8 100644 --- a/mcon/U/i_sysfile.U +++ b/mcon/U/i_sysfile.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysioctl.U b/mcon/U/i_sysioctl.U index a299596..2b9fcbb 100644 --- a/mcon/U/i_sysioctl.U +++ b/mcon/U/i_sysioctl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysmman.U b/mcon/U/i_sysmman.U index 894fd12..4b3c9db 100644 --- a/mcon/U/i_sysmman.U +++ b/mcon/U/i_sysmman.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysndir.U b/mcon/U/i_sysndir.U index 86263ff..7521bd0 100644 --- a/mcon/U/i_sysndir.U +++ b/mcon/U/i_sysndir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysparam.U b/mcon/U/i_sysparam.U index 7fca38f..5ef21dd 100644 --- a/mcon/U/i_sysparam.U +++ b/mcon/U/i_sysparam.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_syspoll.U b/mcon/U/i_syspoll.U index 535b0d3..7d7c86b 100644 --- a/mcon/U/i_syspoll.U +++ b/mcon/U/i_syspoll.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysresrc.U b/mcon/U/i_sysresrc.U index 9b9942e..69f85f1 100644 --- a/mcon/U/i_sysresrc.U +++ b/mcon/U/i_sysresrc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysselct.U b/mcon/U/i_sysselct.U index 5be988b..7ff37a5 100644 --- a/mcon/U/i_sysselct.U +++ b/mcon/U/i_sysselct.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_syssock.U b/mcon/U/i_syssock.U index 7367f9d..357e406 100644 --- a/mcon/U/i_syssock.U +++ b/mcon/U/i_syssock.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysstat.U b/mcon/U/i_sysstat.U index d800eba..92f9691 100644 --- a/mcon/U/i_sysstat.U +++ b/mcon/U/i_sysstat.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_systable.U b/mcon/U/i_systable.U index 1d63464..20c086c 100644 --- a/mcon/U/i_systable.U +++ b/mcon/U/i_systable.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_systimeb.U b/mcon/U/i_systimeb.U index 10f66c2..38f7853 100644 --- a/mcon/U/i_systimeb.U +++ b/mcon/U/i_systimeb.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_systimes.U b/mcon/U/i_systimes.U index bf9f295..c352d6d 100644 --- a/mcon/U/i_systimes.U +++ b/mcon/U/i_systimes.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_systwgcf.U b/mcon/U/i_systwgcf.U index 2c4ba63..2edeebb 100644 --- a/mcon/U/i_systwgcf.U +++ b/mcon/U/i_systwgcf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_systypes.U b/mcon/U/i_systypes.U index 95bfe79..3d7fddb 100644 --- a/mcon/U/i_systypes.U +++ b/mcon/U/i_systypes.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_sysun.U b/mcon/U/i_sysun.U index f8002a9..b99f736 100644 --- a/mcon/U/i_sysun.U +++ b/mcon/U/i_sysun.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_syswait.U b/mcon/U/i_syswait.U index 75ff181..20ff974 100644 --- a/mcon/U/i_syswait.U +++ b/mcon/U/i_syswait.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_termio.U b/mcon/U/i_termio.U index 3bccf5a..b299bde 100644 --- a/mcon/U/i_termio.U +++ b/mcon/U/i_termio.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_time.U b/mcon/U/i_time.U index 8210417..78448e5 100644 --- a/mcon/U/i_time.U +++ b/mcon/U/i_time.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_ucontext.U b/mcon/U/i_ucontext.U index c6aa65b..8de1d97 100644 --- a/mcon/U/i_ucontext.U +++ b/mcon/U/i_ucontext.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_unistd.U b/mcon/U/i_unistd.U index bee1c4f..093d1b6 100644 --- a/mcon/U/i_unistd.U +++ b/mcon/U/i_unistd.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_utime.U b/mcon/U/i_utime.U index 89364c8..7510b3d 100644 --- a/mcon/U/i_utime.U +++ b/mcon/U/i_utime.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_values.U b/mcon/U/i_values.U index 3a38578..6ab704b 100644 --- a/mcon/U/i_values.U +++ b/mcon/U/i_values.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_varhdr.U b/mcon/U/i_varhdr.U index d98a2ee..9e1e3ee 100644 --- a/mcon/U/i_varhdr.U +++ b/mcon/U/i_varhdr.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_vfork.U b/mcon/U/i_vfork.U index 041ca82..b32a21f 100644 --- a/mcon/U/i_vfork.U +++ b/mcon/U/i_vfork.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_whoami.U b/mcon/U/i_whoami.U index 1e96007..d1cd36d 100644 --- a/mcon/U/i_whoami.U +++ b/mcon/U/i_whoami.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_winsock2.U b/mcon/U/i_winsock2.U index e2b62a9..bb93726 100644 --- a/mcon/U/i_winsock2.U +++ b/mcon/U/i_winsock2.U @@ -1,7 +1,7 @@ ?RCS: $Id: i_limits.U 1 2006-08-24 12:32:52Z rmanfredi $ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/i_ws2tcpip.U b/mcon/U/i_ws2tcpip.U index 13b0f8e..8c1c079 100644 --- a/mcon/U/i_ws2tcpip.U +++ b/mcon/U/i_ws2tcpip.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2010, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/ilp.U b/mcon/U/ilp.U index 52a48a8..7d55ced 100644 --- a/mcon/U/ilp.U +++ b/mcon/U/ilp.U @@ -1,6 +1,6 @@ ?RCS: ?RCS: Copyright (c) 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/inc.U b/mcon/U/inc.U index 3e41432..7fbb44e 100644 --- a/mcon/U/inc.U +++ b/mcon/U/inc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/install.U b/mcon/U/install.U index c72f837..dde9376 100644 --- a/mcon/U/install.U +++ b/mcon/U/install.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/intsize.U b/mcon/U/intsize.U index b36f9b7..6ec3c8b 100644 --- a/mcon/U/intsize.U +++ b/mcon/U/intsize.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/ipc.U b/mcon/U/ipc.U index d4f3989..c1f8539 100644 --- a/mcon/U/ipc.U +++ b/mcon/U/ipc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/issymlink.U b/mcon/U/issymlink.U index 460564e..cac0ad0 100644 --- a/mcon/U/issymlink.U +++ b/mcon/U/issymlink.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Original Author: Andy Dougherty ?RCS: ?RCS: $Log: lns.U,v $ diff --git a/mcon/U/kernel.U b/mcon/U/kernel.U index d024025..a89753b 100644 --- a/mcon/U/kernel.U +++ b/mcon/U/kernel.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/lex.U b/mcon/U/lex.U index 28ee113..3ccfc2f 100644 --- a/mcon/U/lex.U +++ b/mcon/U/lex.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/lib.U b/mcon/U/lib.U index d9b53f9..92d7751 100644 --- a/mcon/U/lib.U +++ b/mcon/U/lib.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/libc.U b/mcon/U/libc.U index 1856628..37bdcc9 100644 --- a/mcon/U/libc.U +++ b/mcon/U/libc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -117,7 +117,7 @@ esac ?X: ?X: Some systems (e.g. DG/UX) use "environmental" links, which make the test ?X: -f fail. Ditto for symbolic links. So in order to reliably check the -?X: existence of a file, we use test -r. It will still fail with DG/UX links +?X: existence of a file, we use test -r. It will still fail with DG/UX links ?X: though, but at least it will detect symbolic links. At some strategic ?X: points, we make use of (test -h), using a sub-shell in case builtin test ?X: does not implement the -h check for symbolic links. This makes it diff --git a/mcon/U/libdbm.U b/mcon/U/libdbm.U index 491dd68..239b1db 100644 --- a/mcon/U/libdbm.U +++ b/mcon/U/libdbm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/libflex.U b/mcon/U/libflex.U index 8451085..9717d48 100644 --- a/mcon/U/libflex.U +++ b/mcon/U/libflex.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/libnlist.U b/mcon/U/libnlist.U index 87eb7bd..70c52ad 100644 --- a/mcon/U/libnlist.U +++ b/mcon/U/libnlist.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/libnm.U b/mcon/U/libnm.U index 879bba4..70045ba 100644 --- a/mcon/U/libnm.U +++ b/mcon/U/libnm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/libpth.U b/mcon/U/libpth.U index b6b3f2e..85fe159 100644 --- a/mcon/U/libpth.U +++ b/mcon/U/libpth.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/libs.U b/mcon/U/libs.U index 3671794..d58a15e 100644 --- a/mcon/U/libs.U +++ b/mcon/U/libs.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -63,16 +63,16 @@ ?S: library file is used depending on the cc command line, so that the ?S: correct library is used depending on the selected ABI (for 32 and ?S: 64-bit compilations). -?S: +?S: ?S: Here is an example of code that could be found in a hint file on Irix ?S: when the selected compiler was for 32-bit -- that code is put in the ?S: cc.cbu call-back unit to be invoked AFTER the C compiler and its ?S: flags have been chosen: -?S: +?S: ?S: libscheck='case "$xxx" in ?S: *.a) /bin/ar p $xxx `/bin/ar t $xxx | sed q` >$$.o; ?S: case "`/usr/bin/file $$.o`" in -?S: *N32*) rm -f $$.o ;; +?S: *N32*) rm -f $$.o ;; ?S: *) rm -f $$.o; xxx=/no/n32$xxx ;; ?S: esac ;; ?S: *) case "`/usr/bin/file $xxx`" in @@ -122,7 +122,7 @@ case "$libswanted" in '') libswanted='c_s';; esac ?X: libsocks has nasty naming scheme. -?X: This does not work if somebody wants SOCKS 4. +?X: This does not work if somebody wants SOCKS 4. case "$usesocks" in "$define") libswanted="$libswanted socks5 socks5_sh" ;; esac diff --git a/mcon/U/libyacc.U b/mcon/U/libyacc.U index ec4b8fc..cc7a3f3 100644 --- a/mcon/U/libyacc.U +++ b/mcon/U/libyacc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/lintlib.U b/mcon/U/lintlib.U index 74f9ac3..a93fd30 100644 --- a/mcon/U/lintlib.U +++ b/mcon/U/lintlib.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/lns.U b/mcon/U/lns.U index d3fcd4f..d3cf5aa 100644 --- a/mcon/U/lns.U +++ b/mcon/U/lns.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -22,7 +22,7 @@ ?MAKE:lns: ln rm touch test ?MAKE: -pick add $@ %< ?S:lns: -?S: This variable holds the name of the command to make +?S: This variable holds the name of the command to make ?S: symbolic links (if they are supported). It can be used ?S: in the Makefile. It is either 'ln -s' or 'ln' ?S:. diff --git a/mcon/U/locdist.U b/mcon/U/locdist.U index 524a4ad..dc6299c 100644 --- a/mcon/U/locdist.U +++ b/mcon/U/locdist.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/longsize.U b/mcon/U/longsize.U index 6f5b0c2..5ec0dc3 100644 --- a/mcon/U/longsize.U +++ b/mcon/U/longsize.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/lseektype.U b/mcon/U/lseektype.U index 2ce16d3..0223930 100644 --- a/mcon/U/lseektype.U +++ b/mcon/U/lseektype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -18,7 +18,7 @@ ?MAKE:lseektype: Myread Typedef ?MAKE: -pick add $@ %< ?S:lseektype: -?S: This variable defines lseektype to be something like off_t, long, +?S: This variable defines lseektype to be something like off_t, long, ?S: or whatever type is used to declare lseek offset's type in the ?S: kernel (which also appears to be lseek's return type). ?S:. diff --git a/mcon/U/maildir.U b/mcon/U/maildir.U index efa4fb6..cd07290 100644 --- a/mcon/U/maildir.U +++ b/mcon/U/maildir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/mailer.U b/mcon/U/mailer.U index 9efcaf6..c9ef5e6 100644 --- a/mcon/U/mailer.U +++ b/mcon/U/mailer.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/mailfile.U b/mcon/U/mailfile.U index 14c4b14..64cd1e0 100644 --- a/mcon/U/mailfile.U +++ b/mcon/U/mailfile.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/make.U b/mcon/U/make.U index 49c0641..f9191b4 100644 --- a/mcon/U/make.U +++ b/mcon/U/make.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -20,11 +20,11 @@ ?S: This variable contains the string to be included in Makefile.SH ?S: so that MAKE is set if needed, and not if not needed. ?S: Possible values are: -?S: +?S: ?S: make_set_make='#' # If your make program handles this for you, -?S: +?S: ?S: make_set_make="MAKE=$make" # if it doesn't. -?S: +?S: ?S: This uses a comment character so that we can distinguish a ?S: 'set' value (from a previous config.sh or Configure -D option) ?S: from an uncomputed value. diff --git a/mcon/U/mallocsrc.U b/mcon/U/mallocsrc.U index a1fec47..233fc03 100644 --- a/mcon/U/mallocsrc.U +++ b/mcon/U/mallocsrc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/man1dir.U b/mcon/U/man1dir.U index a9d9e8b..b503690 100644 --- a/mcon/U/man1dir.U +++ b/mcon/U/man1dir.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -16,7 +16,7 @@ ?X: ?X: This was originally specific to perl5. Since perl5 has man pages that ?X: go in both man1/ and man3/ directories, we need both man1dir -?X: and man3dir. This unit is basically dist's mansrc.U with +?X: and man3dir. This unit is basically dist's mansrc.U with ?X: man1 used instead of man everywhere. ?X: ?MAKE:man1dir man1direxp man1ext installman1dir: afs cat nroff Loc Oldconfig \ diff --git a/mcon/U/man3dir.U b/mcon/U/man3dir.U index 2acafa2..3aad1b8 100644 --- a/mcon/U/man3dir.U +++ b/mcon/U/man3dir.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -16,9 +16,9 @@ ?X: ?X: This was originally specific to perl5. Since perl5 has man pages that ?X: go in both man1/ and man3/ directories, we need both man1dir -?X: and man3dir. This unit is basically dist's mansrc.U with +?X: and man3dir. This unit is basically dist's mansrc.U with ?X: man3 used instead of man everywhere. -?X: I then added various tests because perl5 has *lots* of man3 +?X: I then added various tests because perl5 has *lots* of man3 ?X: pages with long file names. -- ADO ?X: ?MAKE:man3dir man3direxp man3ext installman3dir: afs cat nroff Loc Oldconfig \ diff --git a/mcon/U/manfmt.U b/mcon/U/manfmt.U index e4ac58f..aac906e 100644 --- a/mcon/U/manfmt.U +++ b/mcon/U/manfmt.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/mansrc.U b/mcon/U/mansrc.U index 398a8dd..bfca6a1 100644 --- a/mcon/U/mansrc.U +++ b/mcon/U/mansrc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/mboxchar.U b/mcon/U/mboxchar.U index 3176523..c837b1b 100644 --- a/mcon/U/mboxchar.U +++ b/mcon/U/mboxchar.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/mkdep.U b/mcon/U/mkdep.U index 36e8f5b..1bfd974 100644 --- a/mcon/U/mkdep.U +++ b/mcon/U/mkdep.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/models.U b/mcon/U/models.U index 4946c7e..77f955d 100644 --- a/mcon/U/models.U +++ b/mcon/U/models.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/modetype.U b/mcon/U/modetype.U index 438652b..f048978 100644 --- a/mcon/U/modetype.U +++ b/mcon/U/modetype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -17,12 +17,12 @@ ?MAKE:modetype: Myread Typedef ?MAKE: -pick add $@ %< ?S:modetype: -?S: This variable defines modetype to be something like mode_t, -?S: int, unsigned short, or whatever type is used to declare file +?S: This variable defines modetype to be something like mode_t, +?S: int, unsigned short, or whatever type is used to declare file ?S: modes for system calls. ?S:. ?C:Mode_t: -?C: This symbol holds the type used to declare file modes +?C: This symbol holds the type used to declare file modes ?C: for systems calls. It is usually mode_t, but may be ?C: int or unsigned short. It may be necessary to include ?C: to get any typedef'ed information. diff --git a/mcon/U/myhostname.U b/mcon/U/myhostname.U index 031af53..36dbdc2 100644 --- a/mcon/U/myhostname.U +++ b/mcon/U/myhostname.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/n.U b/mcon/U/n.U index 00e7f9f..373a9dc 100644 --- a/mcon/U/n.U +++ b/mcon/U/n.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/nametype.U b/mcon/U/nametype.U index 3533ba8..0ea2b57 100644 --- a/mcon/U/nametype.U +++ b/mcon/U/nametype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/nblock_io.U b/mcon/U/nblock_io.U index 27637f5..1bbaf3d 100644 --- a/mcon/U/nblock_io.U +++ b/mcon/U/nblock_io.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/newslevel.U b/mcon/U/newslevel.U index 8c948f0..09bab23 100644 --- a/mcon/U/newslevel.U +++ b/mcon/U/newslevel.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -14,7 +14,7 @@ ?RCS: ?MAKE:newslevel: cat contains test activeexp newslib Myread Oldconfig ?MAKE: -pick add $@ %< -?S:newslevel: +?S:newslevel: ?S: The current revision level of the Usenet news system, encoded ?S: as 1000 * major rev + 10 * minor rev + sub rev. For instance, ?S: news 2.10.3 is encode as 2103, and 2.11 as 2110. diff --git a/mcon/U/newslib.U b/mcon/U/newslib.U index 1b32716..4414039 100644 --- a/mcon/U/newslib.U +++ b/mcon/U/newslib.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/newsspool.U b/mcon/U/newsspool.U index a180390..82467b2 100644 --- a/mcon/U/newsspool.U +++ b/mcon/U/newsspool.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/nis.U b/mcon/U/nis.U index 762510f..06e4c47 100644 --- a/mcon/U/nis.U +++ b/mcon/U/nis.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/nlist_pfx.U b/mcon/U/nlist_pfx.U index 7e9232d..20bca8e 100644 --- a/mcon/U/nlist_pfx.U +++ b/mcon/U/nlist_pfx.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/orderlib.U b/mcon/U/orderlib.U index b04f55e..b61bf16 100644 --- a/mcon/U/orderlib.U +++ b/mcon/U/orderlib.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/orgname.U b/mcon/U/orgname.U index 1ee1145..45a51b4 100644 --- a/mcon/U/orgname.U +++ b/mcon/U/orgname.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/packadmin.U b/mcon/U/packadmin.U index 4e3f684..921c8d1 100644 --- a/mcon/U/packadmin.U +++ b/mcon/U/packadmin.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/package.U b/mcon/U/package.U index fcb08cf..7dd97e3 100644 --- a/mcon/U/package.U +++ b/mcon/U/package.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/pager.U b/mcon/U/pager.U index 612d111..d429438 100644 --- a/mcon/U/pager.U +++ b/mcon/U/pager.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/patchlevel.U b/mcon/U/patchlevel.U index b44e96f..3da3183 100644 --- a/mcon/U/patchlevel.U +++ b/mcon/U/patchlevel.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/perlpath.U b/mcon/U/perlpath.U index 0bfaad7..08a85aa 100644 --- a/mcon/U/perlpath.U +++ b/mcon/U/perlpath.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/pidtype.U b/mcon/U/pidtype.U index 2674675..22ed2de 100644 --- a/mcon/U/pidtype.U +++ b/mcon/U/pidtype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -18,7 +18,7 @@ ?MAKE:pidtype: Myread Typedef ?MAKE: -pick add $@ %< ?S:pidtype: -?S: This variable defines PIDTYPE to be something like pid_t, int, +?S: This variable defines PIDTYPE to be something like pid_t, int, ?S: ushort, or whatever type is used to declare process ids in the kernel. ?S:. ?C:Pid_t (PIDTYPE): diff --git a/mcon/U/pkgsrc.U b/mcon/U/pkgsrc.U index e434a90..f69c195 100644 --- a/mcon/U/pkgsrc.U +++ b/mcon/U/pkgsrc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/prefix.U b/mcon/U/prefix.U index a7db029..ded5729 100644 --- a/mcon/U/prefix.U +++ b/mcon/U/prefix.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/prefshell.U b/mcon/U/prefshell.U index 7e48c81..315f689 100644 --- a/mcon/U/prefshell.U +++ b/mcon/U/prefshell.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/privlib.U b/mcon/U/privlib.U index c63b067..ce166aa 100644 --- a/mcon/U/privlib.U +++ b/mcon/U/privlib.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/prototype.U b/mcon/U/prototype.U index a6d3ca6..ff4f85b 100644 --- a/mcon/U/prototype.U +++ b/mcon/U/prototype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/ptrsize.U b/mcon/U/ptrsize.U index f276047..ccefbfe 100644 --- a/mcon/U/ptrsize.U +++ b/mcon/U/ptrsize.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, 2012 Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/randbits.U b/mcon/U/randbits.U index f64f041..b633b17 100644 --- a/mcon/U/randbits.U +++ b/mcon/U/randbits.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/randfunc.U b/mcon/U/randfunc.U index 53fa809..850e634 100644 --- a/mcon/U/randfunc.U +++ b/mcon/U/randfunc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/rcs_branch.U b/mcon/U/rcs_branch.U index 08f792f..5898140 100644 --- a/mcon/U/rcs_branch.U +++ b/mcon/U/rcs_branch.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/registers.U b/mcon/U/registers.U index 7152a7a..19fa3b5 100644 --- a/mcon/U/registers.U +++ b/mcon/U/registers.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/rootid.U b/mcon/U/rootid.U index 154d13e..ec0b196 100644 --- a/mcon/U/rootid.U +++ b/mcon/U/rootid.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/sbrksmart.U b/mcon/U/sbrksmart.U index 14e6cc0..a6b244e 100644 --- a/mcon/U/sbrksmart.U +++ b/mcon/U/sbrksmart.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/sbrktype.U b/mcon/U/sbrktype.U index c0c8c9e..bb4bcc3 100644 --- a/mcon/U/sbrktype.U +++ b/mcon/U/sbrktype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,7 +15,7 @@ ?MAKE:sbrktype: Myread Oldconfig Loc contains Findhdr ?MAKE: -pick add $@ %< ?S:sbrktype: -?S: This variable defines sbrktype to be something like caddr_t, char *, +?S: This variable defines sbrktype to be something like caddr_t, char *, ?S: or whatever type is used to declare sbrk() in the kernel. ?S:. ?C:Caddr_t (SBRKTYPE): diff --git a/mcon/U/scriptdir.U b/mcon/U/scriptdir.U index 633612a..c4d10ea 100644 --- a/mcon/U/scriptdir.U +++ b/mcon/U/scriptdir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/selecttype.U b/mcon/U/selecttype.U index 3955e78..bdd5d1c 100644 --- a/mcon/U/selecttype.U +++ b/mcon/U/selecttype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -26,13 +26,13 @@ ?S:selecttype: ?S: This variable holds the type used for the 2nd, 3rd, and 4th ?S: arguments to select. Usually, this is 'fd_set *', if HAS_FD_SET -?S: is defined, and 'int *' otherwise. This is only useful if you +?S: is defined, and 'int *' otherwise. This is only useful if you ?S: have select(), naturally. ?S:. ?C:Select_fd_set_t: ?C: This symbol holds the type used for the 2nd, 3rd, and 4th ?C: arguments to select. Usually, this is 'fd_set *', if HAS_FD_SET -?C: is defined, and 'int *' otherwise. This is only useful if you +?C: is defined, and 'int *' otherwise. This is only useful if you ?C: have select(), of course. ?C:. ?H:#define Select_fd_set_t $selecttype /**/ diff --git a/mcon/U/sh.U b/mcon/U/sh.U index 2dc966d..fafe5b1 100644 --- a/mcon/U/sh.U +++ b/mcon/U/sh.U @@ -2,13 +2,13 @@ ?RCS: ?RCS: Copyright (c) 1997, Chip Salzenberg ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: sh.U,v $ ?RCS: Revision 3.0.1.1 1997/02/28 16:20:13 ram ?RCS: patch61: created @@ -45,7 +45,7 @@ : Find the basic shell for Bourne shell scripts case "$sh" in '') -?X: SYSTYPE is for some older MIPS systems. +?X: SYSTYPE is for some older MIPS systems. ?X: I do not know if it is still needed. case "$SYSTYPE" in *bsd*|sys5*) xxx="/$SYSTYPE/bin/sh";; diff --git a/mcon/U/shm_for.U b/mcon/U/shm_for.U index 3683bbf..f09f557 100644 --- a/mcon/U/shm_for.U +++ b/mcon/U/shm_for.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/sig_name.U b/mcon/U/sig_name.U index dcefdc7..ff61f82 100644 --- a/mcon/U/sig_name.U +++ b/mcon/U/sig_name.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -37,22 +37,22 @@ ?S:. ?S:sig_name_init: ?S: This variable holds the signal names, enclosed in double quotes and -?S: separated by commas, suitable for use in the SIG_NAME definition -?S: below. A "ZERO" is prepended to the list, and the list is +?S: separated by commas, suitable for use in the SIG_NAME definition +?S: below. A "ZERO" is prepended to the list, and the list is ?S: terminated with a plain 0. The leading SIG in signal names ?S: is removed. See sig_num. ?S:. ?S:sig_num: ?S: This variable holds the signal numbers, space separated. A ZERO is -?S: prepended to the list (corresponding to the fake SIGZERO), and -?S: the list is terminated with a 0. Those numbers correspond to +?S: prepended to the list (corresponding to the fake SIGZERO), and +?S: the list is terminated with a 0. Those numbers correspond to ?S: the value of the signal listed in the same place within the ?S: sig_name list. ?S:. ?S:sig_num_init: ?S: This variable holds the signal numbers, enclosed in double quotes and -?S: separated by commas, suitable for use in the SIG_NUM definition -?S: below. A "ZERO" is prepended to the list, and the list is +?S: separated by commas, suitable for use in the SIG_NUM definition +?S: below. A "ZERO" is prepended to the list, and the list is ?S: terminated with a plain 0. ?S:. ?S:sig_count (sig_name.U): @@ -84,10 +84,10 @@ ?C: The signals in the list are separated with commas, and the indices ?C: within that list and the SIG_NAME list match, so it's easy to compute ?C: the signal name from a number or vice versa at the price of a small -?C: dynamic linear lookup. +?C: dynamic linear lookup. ?C: Duplicates are allowed, but are moved to the end of the list. ?C: The signal number corresponding to sig_name[i] is sig_number[i]. -?C: if (i < NSIG) then sig_number[i] == i. +?C: if (i < NSIG) then sig_number[i] == i. ?C: The last element is 0, corresponding to the 0 at the end of ?C: the sig_name list. ?C:. diff --git a/mcon/U/sitearch.U b/mcon/U/sitearch.U index 4ccf40d..f2618a1 100644 --- a/mcon/U/sitearch.U +++ b/mcon/U/sitearch.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/sitelib.U b/mcon/U/sitelib.U index 26d95c5..898b181 100644 --- a/mcon/U/sitelib.U +++ b/mcon/U/sitelib.U @@ -2,13 +2,13 @@ ?RCS: ?RCS: Copyright (c) 1996, Andy Dougherty ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: $Log: sitelib.U,v $ ?RCS: Revision 3.0.1.1 1997/02/28 16:21:35 ram ?RCS: patch61: created diff --git a/mcon/U/sizetype.U b/mcon/U/sizetype.U index ff13eee..f08b4f3 100644 --- a/mcon/U/sizetype.U +++ b/mcon/U/sizetype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -17,8 +17,8 @@ ?MAKE:sizetype: Myread Typedef ?MAKE: -pick add $@ %< ?S:sizetype: -?S: This variable defines sizetype to be something like size_t, -?S: unsigned long, or whatever type is used to declare length +?S: This variable defines sizetype to be something like size_t, +?S: unsigned long, or whatever type is used to declare length ?S: parameters for string functions. ?S:. ?C:Size_t: diff --git a/mcon/U/so.U b/mcon/U/so.U index 9dd0285..e0bcf88 100644 --- a/mcon/U/so.U +++ b/mcon/U/so.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/sockopt.U b/mcon/U/sockopt.U index 490704b..1eea5dd 100644 --- a/mcon/U/sockopt.U +++ b/mcon/U/sockopt.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/spitshell.U b/mcon/U/spitshell.U index b4db27d..f123fa5 100644 --- a/mcon/U/spitshell.U +++ b/mcon/U/spitshell.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/src.U b/mcon/U/src.U index 7eb0775..cba884f 100644 --- a/mcon/U/src.U +++ b/mcon/U/src.U @@ -2,7 +2,7 @@ ?RCS: ?RCS: Copyright (c) 1996, Cygnus Support ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/ssizetype.U b/mcon/U/ssizetype.U index 4d0dea3..019bdaa 100644 --- a/mcon/U/ssizetype.U +++ b/mcon/U/ssizetype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -25,8 +25,8 @@ +cc +optimize +ccflags +ldflags +libs _o ?MAKE: -pick add $@ %< ?S:ssizetype: -?S: This variable defines ssizetype to be something like ssize_t, -?S: long or int. It is used by functions that return a count +?S: This variable defines ssizetype to be something like ssize_t, +?S: long or int. It is used by functions that return a count ?S: of bytes or an error condition. It must be a signed type. ?S: We will pick a type such that sizeof(SSize_t) == sizeof(Size_t). ?S:. diff --git a/mcon/U/startperl.U b/mcon/U/startperl.U index dfb66ef..c511a54 100644 --- a/mcon/U/startperl.U +++ b/mcon/U/startperl.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/startsh.U b/mcon/U/startsh.U index 5c16ad8..90a4ad9 100644 --- a/mcon/U/startsh.U +++ b/mcon/U/startsh.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/stdchar.U b/mcon/U/stdchar.U index 5182d8c..02c9056 100644 --- a/mcon/U/stdchar.U +++ b/mcon/U/stdchar.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/sunscanf.U b/mcon/U/sunscanf.U index c106ba6..d0c8fa8 100644 --- a/mcon/U/sunscanf.U +++ b/mcon/U/sunscanf.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/sysman.U b/mcon/U/sysman.U index 157b1e8..8347350 100644 --- a/mcon/U/sysman.U +++ b/mcon/U/sysman.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/trnl.U b/mcon/U/trnl.U index df5fa8a..f8fa904 100644 --- a/mcon/U/trnl.U +++ b/mcon/U/trnl.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Copyright (c) 1998 Andy Dougherty ?RCS: ?RCS: Original author Jarkko Hietaniemi diff --git a/mcon/U/uidtype.U b/mcon/U/uidtype.U index 8db7b6d..da716e2 100644 --- a/mcon/U/uidtype.U +++ b/mcon/U/uidtype.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -25,7 +25,7 @@ ?MAKE:uidtype: Myread Typedef Findhdr ?MAKE: -pick add $@ %< ?S:uidtype: -?S: This variable defines Uid_t to be something like uid_t, int, +?S: This variable defines Uid_t to be something like uid_t, int, ?S: ushort, or whatever type is used to declare user ids in the kernel. ?S:. ?C:Uid_t (UIDTYPE): diff --git a/mcon/U/usenm.U b/mcon/U/usenm.U index 79eab00..b11f3c9 100644 --- a/mcon/U/usenm.U +++ b/mcon/U/usenm.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/usesocks.U b/mcon/U/usesocks.U index 05c3979..4520b8c 100644 --- a/mcon/U/usesocks.U +++ b/mcon/U/usesocks.U @@ -1,13 +1,13 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. -?RCS: +?RCS: ?RCS: Copyright (c) 1999 Jarkko Hietaniemi ?RCS: ?MAKE:usesocks: Myread Oldconfig Setvar spackage package diff --git a/mcon/U/usrinc.U b/mcon/U/usrinc.U index e124bb1..3f8ef00 100644 --- a/mcon/U/usrinc.U +++ b/mcon/U/usrinc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/vaproto.U b/mcon/U/vaproto.U index 57b58e0..f165d9f 100644 --- a/mcon/U/vaproto.U +++ b/mcon/U/vaproto.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/voidflags.U b/mcon/U/voidflags.U index d0c9f26..32d054c 100644 --- a/mcon/U/voidflags.U +++ b/mcon/U/voidflags.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/warnflags.U b/mcon/U/warnflags.U index 9946cbd..0faf3b0 100644 --- a/mcon/U/warnflags.U +++ b/mcon/U/warnflags.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/yacc.U b/mcon/U/yacc.U index a442969..6f56e1c 100644 --- a/mcon/U/yacc.U +++ b/mcon/U/yacc.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/Internal.U b/mcon/files/Internal.U index 56d7e6e..2f1401c 100644 --- a/mcon/files/Internal.U +++ b/mcon/files/Internal.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/d_function.U b/mcon/files/d_function.U index eb5ff4a..58c440b 100644 --- a/mcon/files/d_function.U +++ b/mcon/files/d_function.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/dir.U b/mcon/files/dir.U index 507f789..ad7b15f 100644 --- a/mcon/files/dir.U +++ b/mcon/files/dir.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/file.U b/mcon/files/file.U index 962bea5..55bb95f 100644 --- a/mcon/files/file.U +++ b/mcon/files/file.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/i_include.U b/mcon/files/i_include.U index 8abd462..e96c594 100644 --- a/mcon/files/i_include.U +++ b/mcon/files/i_include.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/keyword.U b/mcon/files/keyword.U index c94a5c7..7feefa4 100644 --- a/mcon/files/keyword.U +++ b/mcon/files/keyword.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/locate.U b/mcon/files/locate.U index 3793062..c6866fd 100644 --- a/mcon/files/locate.U +++ b/mcon/files/locate.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/question.U b/mcon/files/question.U index 56e38b5..6273d99 100644 --- a/mcon/files/question.U +++ b/mcon/files/question.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/rcshead.U b/mcon/files/rcshead.U index 67a14df..e75d7e8 100644 --- a/mcon/files/rcshead.U +++ b/mcon/files/rcshead.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/shell.U b/mcon/files/shell.U index 5949b9d..0b018fc 100644 --- a/mcon/files/shell.U +++ b/mcon/files/shell.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of diff --git a/mcon/files/type.U b/mcon/files/type.U index 583b29a..ef3808d 100644 --- a/mcon/files/type.U +++ b/mcon/files/type.U @@ -1,7 +1,7 @@ ?RCS: $Id$ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -?RCS: +?RCS: ?RCS: You may redistribute only under the terms of the Artistic Licence, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of @@ -15,7 +15,7 @@ ?MAKE:uidtype: Myread Oldconfig contains usrinc ?MAKE: -pick add $@ %< ?S:uidtype: -?S: This variable defines UIDTYPE to be something like uid_t, int, +?S: This variable defines UIDTYPE to be something like uid_t, int, ?S: ushort, or whatever type is used to declare user ids in the kernel. ?S:. ?C:Uid_t (UIDTYPE): -- cgit v1.2.3 From 84ae62697098fdaccc0bc97df67f7d5ea8878239 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Sun, 22 May 2016 17:08:46 +0200 Subject: Spelling: it is explicitly without e in both US and UK English (#2) * Spelling: it is explicitly without e in both US and UK English * Remove trailing whitespace in meta-lines in units --- ChangeLog | 34 +++++++++++++++++----------------- mcon/Jmakefile | 2 +- mcon/Makefile.SH | 2 +- mcon/NOTES | 2 +- mcon/U/Configdir.U | 2 +- mcon/U/Finish.U | 2 +- mcon/U/Guess.U | 2 +- mcon/U/Head.U | 2 +- mcon/U/Inhdr.U | 2 +- mcon/U/Inlibc.U | 2 +- mcon/U/Setvar.U | 2 +- mcon/U/Warn_v7EXT.U | 2 +- mcon/U/Warn_v7ND.U | 2 +- mcon/U/abortsig.U | 2 +- mcon/U/afs.U | 2 +- mcon/U/bin.U | 2 +- mcon/U/ccflags.U | 2 +- mcon/U/d_bsdjmp.U | 2 +- mcon/U/d_eofpipe.U | 2 +- mcon/U/d_gethname.U | 2 +- mcon/U/d_keepsig.U | 2 +- mcon/U/d_newsadm.U | 2 +- mcon/U/d_normsig.U | 2 +- mcon/U/d_setpgrp.U | 2 +- mcon/U/d_speedopt.U | 2 +- mcon/U/d_tzmin.U | 2 +- mcon/U/d_vfork.U | 4 ++-- mcon/U/i_termio.U | 2 +- mcon/U/myhostname.U | 2 +- mcon/U/nametype.U | 2 +- mcon/U/registers.U | 2 +- mcon/U/sbrksmart.U | 2 +- mcon/U/shm_for.U | 2 +- mcon/U/sysman.U | 2 +- mcon/U/uidtype.U | 2 +- mcon/U/voidflags.U | 2 +- mcon/U/yacc.U | 2 +- mcon/man/mconfig.SH | 2 +- mcon/man/mlint.SH | 4 ++-- 39 files changed, 57 insertions(+), 57 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3dce502..4a11de9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -90,7 +90,7 @@ Fri Feb 28 17:48:41 MET 1997 Raphael Manfredi Andreas Koenig on the perl5-porters mailing list. Thanks! - Now sets sbrksmart to undef explicitely when lacking sbrk(). + Now sets sbrksmart to undef explicitly when lacking sbrk(). Forgot a cast when using return value from sbrk(). Both fixes reported by Xavier Le Vourch . @@ -1038,7 +1038,7 @@ Wed Jan 11 17:03:22 MET 1995 Raphael Manfredi * mcon/U/orderlib.U: Allows hint files to specify their own value for 'ranlib'. - * mcon/U/sbrksmart.U: Now sets sbrksmart to undef explicitely when + * mcon/U/sbrksmart.U: Now sets sbrksmart to undef explicitly when lacking sbrk(). Forgot a cast when using return value from sbrk(). * mcon/U/spitshell.U: Use 'test -f' instead of 'test -r' for @@ -1083,7 +1083,7 @@ Mon Oct 31 10:57:05 MET 1994 Raphael Manfredi in their ?MAKE: line due to the way metalint performs its visible symbol lookup (by following dependencies recursively and implicitely placing Init at the top). Since Options is no longer a dependency - of Init, Myread.U and Csym.U now explicitely mention Options in + of Init, Myread.U and Csym.U now explicitly mention Options in their dependency line. Also, the leading comment in Chk_MANI.U now explains how this @@ -1302,12 +1302,12 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi HOME to the ?T: line since metalint now checks ${HOME}. * mcon/U/Guess.U: Added ?F: line for metalint file checking. Call - ./xenix explicitely instead of relying on PATH. + ./xenix explicitly instead of relying on PATH. * mcon/U/Head.U: Make sure ENV is unset before calling /bin/ksh. * mcon/U/Setvar.U, mcon/U/Inhdr.U, mcon/U/Inlibc.U: Call ./whoa - explicitely instead of relying on PATH. + explicitly instead of relying on PATH. * mcon/U/Loc.U: Added ?F: line for metalint file checking. Be careful and guard against wildcard searching (ADO). @@ -1323,10 +1323,10 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi * mcon/U/Typedef.U: Don't clobber visible 'val' variable, use 'varval' instead. - * mcon/U/Warn_v7EXT.U, mcon/U/Warn_v7ND.U: Call ./v7 explicitely + * mcon/U/Warn_v7EXT.U, mcon/U/Warn_v7ND.U: Call ./v7 explicitly instead of relying on PATH. - * mcon/U/abortsig.U, mcon/U/d_bsdjmp.U: Call ./usg explicitely + * mcon/U/abortsig.U, mcon/U/d_bsdjmp.U: Call ./usg explicitly instead of relying on PATH. * mcon/U/d_attribut.U, mcon/U/d_gconvert.U, mcon/U/d_drem.U, @@ -1358,19 +1358,19 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi McQueen). * mcon/U/d_keepsig.U, mcon/U/d_eofpipe.U, mcon/U/d_normsig.U, - mcon/U/d_tzmin.U: Call ./bsd explicitely instead of relying on PATH. + mcon/U/d_tzmin.U: Call ./bsd explicitly instead of relying on PATH. - * mcon/U/d_gethname.U: Call ./xenix explicitely instead of relying on + * mcon/U/d_gethname.U: Call ./xenix explicitly instead of relying on PATH. - * mcon/U/d_newsadm.U: Call ./eunice explicitely instead of relying on + * mcon/U/d_newsadm.U: Call ./eunice explicitly instead of relying on PATH. * mcon/U/d_setpgrp.U: Added 'ldflags' to the test compile line (ADO). - Call ./usg explicitely instead of relying on PATH. + Call ./usg explicitly instead of relying on PATH. * mcon/U/registers.U, mcon/U/shm_for.U, mcon/U/d_speedopt.U: Call - ./Cppsym explicitely instead of relying on PATH. + ./Cppsym explicitly instead of relying on PATH. * mcon/U/d_time.U: Now uses new Typedef unit to compute type information (ADO). @@ -1384,7 +1384,7 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi * mcon/U/i_neterrno.U: Forgot to initialize 'val' to an empty value (ADO). - * mcon/U/i_termio.U: Call ./usg and ./Cppsym explicitely instead of + * mcon/U/i_termio.U: Call ./usg and ./Cppsym explicitly instead of relying on PATH. * mcon/U/lex.U: Spurious single quote could cause Configure to crash. @@ -1398,10 +1398,10 @@ Sat Oct 29 18:16:03 MET 1994 Raphael Manfredi * mcon/U/mailfile.U: The Loc unit was missing from the dependency line. - * mcon/U/myhostname.U: Call ./xenix explicitely instead of relying on + * mcon/U/myhostname.U: Call ./xenix explicitly instead of relying on PATH. Now uses new Tr unit to convert to/from lowercase. - * mcon/U/nametype.U: Call ./usg and ./bsd explicitely instead of + * mcon/U/nametype.U: Call ./usg and ./bsd explicitly instead of relying on PATH. * mcon/U/orderlib.U: Now performs a real small compile for accurate diff --git a/mcon/Jmakefile b/mcon/Jmakefile index 36b6d1f..1a18b39 100644 --- a/mcon/Jmakefile +++ b/mcon/Jmakefile @@ -20,7 +20,7 @@ ;# patch16: added dependency generation stage ;# ;# Revision 3.0.1.2 1993/11/02 10:40:01 ram -;# patch14: now invokes perload explicitely via perl executable +;# patch14: now invokes perload explicitly via perl executable ;# ;# Revision 3.0.1.1 1993/08/25 08:46:44 ram ;# patch6: split unit installation to avoid shell command line overflow diff --git a/mcon/Makefile.SH b/mcon/Makefile.SH index 54a10b6..64b62d5 100755 --- a/mcon/Makefile.SH +++ b/mcon/Makefile.SH @@ -81,7 +81,7 @@ $spitshell >>Makefile <<'!NO!SUBS!' # patch16: added dependency generation stage # # Revision 3.0.1.2 1993/11/02 10:40:01 ram -# patch14: now invokes perload explicitely via perl executable +# patch14: now invokes perload explicitly via perl executable # # Revision 3.0.1.1 1993/08/25 08:46:44 ram # patch6: split unit installation to avoid shell command line overflow diff --git a/mcon/NOTES b/mcon/NOTES index b6762e0..542910f 100644 --- a/mcon/NOTES +++ b/mcon/NOTES @@ -144,7 +144,7 @@ For instance, d_const.U writes: ?C:HASCONST ~ %<: so that the HASCONST hype is loaded iff the unit (%<) is wanted. This is why -the ?H: lines are also explicitely tied to the wanted-ness of the d_const +the ?H: lines are also explicitly tied to the wanted-ness of the d_const symbol, by writing: ?H:?%<:#$d_const HASCONST /**/ diff --git a/mcon/U/Configdir.U b/mcon/U/Configdir.U index fe81f25..7d81fbc 100644 --- a/mcon/U/Configdir.U +++ b/mcon/U/Configdir.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: Configdir.U,v $ ?RCS: Revision 3.0.1.1 1997/02/28 14:58:36 ram -?RCS: patch61: have README explicitely mention the package name +?RCS: patch61: have README explicitly mention the package name ?RCS: ?RCS: Revision 3.0 1993/08/18 12:04:49 ram ?RCS: Baseline for dist 3.0 netwide release. diff --git a/mcon/U/Finish.U b/mcon/U/Finish.U index 6085230..cf5a364 100644 --- a/mcon/U/Finish.U +++ b/mcon/U/Finish.U @@ -74,7 +74,7 @@ esac ?X: ?X: Turn silent mode off from now on (we want a verbose file extraction). -?X: This means we have to explicitely test for '$silent' from now on to +?X: This means we have to explicitly test for '$silent' from now on to ?X: strip off any verbose messages. ?X: echo " " diff --git a/mcon/U/Guess.U b/mcon/U/Guess.U index 4722053..bee82a1 100644 --- a/mcon/U/Guess.U +++ b/mcon/U/Guess.U @@ -14,7 +14,7 @@ ?RCS: ?RCS: Revision 3.0.1.4 1994/10/29 15:53:55 ram ?RCS: patch36: added ?F: line for metalint file checking -?RCS: patch36: call ./xenix explicitely instead of relying on PATH +?RCS: patch36: call ./xenix explicitly instead of relying on PATH ?RCS: ?RCS: Revision 3.0.1.3 1993/12/15 08:14:35 ram ?RCS: patch15: variable d_bsd was not always set properly diff --git a/mcon/U/Head.U b/mcon/U/Head.U index 51bcae5..933e489 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -234,7 +234,7 @@ true/[a-z]*) ;; esac ?X: Warn them if they use ksh on other systems, which are those where -?X: we don't need ksh nor want to avoid it explicitely, yet are using it. +?X: we don't need ksh nor want to avoid it explicitly, yet are using it. case "$inksh/$needksh-$avoidksh-" in true/--) cat < /etc/passwd (WED) diff --git a/mcon/U/registers.U b/mcon/U/registers.U index 19fa3b5..f61f290 100644 --- a/mcon/U/registers.U +++ b/mcon/U/registers.U @@ -13,7 +13,7 @@ ?RCS: patch61: removed empty ?LINT lines ?RCS: ?RCS: Revision 3.0.1.1 1994/10/29 16:28:33 ram -?RCS: patch36: call ./Cppsym explicitely instead of relying on PATH +?RCS: patch36: call ./Cppsym explicitly instead of relying on PATH ?RCS: ?RCS: Revision 3.0 1993/08/18 12:09:41 ram ?RCS: Baseline for dist 3.0 netwide release. diff --git a/mcon/U/sbrksmart.U b/mcon/U/sbrksmart.U index a6b244e..c07e9b2 100644 --- a/mcon/U/sbrksmart.U +++ b/mcon/U/sbrksmart.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: sbrksmart.U,v $ ?RCS: Revision 3.0.1.2 1995/01/11 15:35:41 ram -?RCS: patch45: now sets sbrksmart to undef explicitely when lacking sbrk() +?RCS: patch45: now sets sbrksmart to undef explicitly when lacking sbrk() ?RCS: patch45: forgot a cast when using return value from sbrk() ?RCS: ?RCS: Revision 3.0.1.1 1994/01/24 14:16:45 ram diff --git a/mcon/U/shm_for.U b/mcon/U/shm_for.U index f09f557..3f1c7ce 100644 --- a/mcon/U/shm_for.U +++ b/mcon/U/shm_for.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: shm_for.U,v $ ?RCS: Revision 3.0.1.1 1994/10/29 16:28:37 ram -?RCS: patch36: call ./Cppsym explicitely instead of relying on PATH +?RCS: patch36: call ./Cppsym explicitly instead of relying on PATH ?RCS: ?RCS: Revision 3.0 1993/08/18 12:09:46 ram ?RCS: Baseline for dist 3.0 netwide release. diff --git a/mcon/U/sysman.U b/mcon/U/sysman.U index 8347350..1e21511 100644 --- a/mcon/U/sysman.U +++ b/mcon/U/sysman.U @@ -10,7 +10,7 @@ ?RCS: ?RCS: $Log: sysman.U,v $ ?RCS: Revision 3.0.1.2 1994/06/20 07:08:43 ram -?RCS: patch30: now explicitely states that /usr/man/man1 is the default +?RCS: patch30: now explicitly states that /usr/man/man1 is the default ?RCS: patch30: added /usr/local/man/man1 to the search list ?RCS: ?RCS: Revision 3.0.1.1 1993/09/13 16:13:50 ram diff --git a/mcon/U/uidtype.U b/mcon/U/uidtype.U index da716e2..ba9368a 100644 --- a/mcon/U/uidtype.U +++ b/mcon/U/uidtype.U @@ -17,7 +17,7 @@ ?RCS: ?RCS: Revision 3.0.1.1 1994/05/13 15:28:27 ram ?RCS: patch27: made conform to its gidtype.U companion -?RCS: patch27: question now explicitely mentions getuid() +?RCS: patch27: question now explicitly mentions getuid() ?RCS: ?RCS: Revision 3.0 1993/08/18 12:09:56 ram ?RCS: Baseline for dist 3.0 netwide release. diff --git a/mcon/U/voidflags.U b/mcon/U/voidflags.U index 32d054c..619aa14 100644 --- a/mcon/U/voidflags.U +++ b/mcon/U/voidflags.U @@ -29,7 +29,7 @@ ?S:defvoidused: ?S: This variable contains the default value of the VOIDUSED symbol (15). ?S:. -?X: Exceptionally, we have to explicitely alias the symbol name for +?X: Exceptionally, we have to explicitly alias the symbol name for ?X: config_h.SH, otherwise the comment would not appear. ?C:VOIDFLAGS ~ %<: ?C: This symbol indicates how much support of the void type is given by this diff --git a/mcon/U/yacc.U b/mcon/U/yacc.U index 6f56e1c..0a4abfb 100644 --- a/mcon/U/yacc.U +++ b/mcon/U/yacc.U @@ -74,7 +74,7 @@ esac $cat < Date: Sun, 29 May 2016 18:10:20 +0200 Subject: Escape ~ as some shells expand tilde during here-doc expansion (#6) Could it be that some broken shells would expand the leading ~ during the here-document processing? If that is so, my suggestion is to include ?X: lines in the unit to explicitly document that fact so that nobody mistakenly removes the escaping later on, thinking it is not required. This is my guess, but I have never encountered that problem anywhere, which is why the "official" dist does not escape the ~. However, Perl is compiled in much more diverse platorms as gtk-gnutella is so it would not surprise me... the hard part will be to remember on which platform the problem was spotted :-) Cheers, Raphael --- mcon/U/Filexp.U | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/mcon/U/Filexp.U b/mcon/U/Filexp.U index bf768b1..31e57a5 100644 --- a/mcon/U/Filexp.U +++ b/mcon/U/Filexp.U @@ -31,11 +31,15 @@ cat >filexp < Date: Sun, 29 May 2016 18:10:56 +0200 Subject: Ask pwd the absolute path if $src is relative (#5) --- mcon/U/src.U | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/mcon/U/src.U b/mcon/U/src.U index cba884f..87471e0 100644 --- a/mcon/U/src.U +++ b/mcon/U/src.U @@ -32,10 +32,14 @@ : Find the path to the source tree case "$src" in '') case "$0" in - */*) - src=`echo $0 | sed -e 's%/[^/][^/]*$%%'` - ;; - *) src='.';; + */*) src=`echo $0 | sed -e 's%/[^/][^/]*$%%'` + case "$src" in + /*) ;; + .) ;; + *) src=`cd ../$src && pwd` ;; + esac + ;; + *) src='.';; esac;; esac case "$src" in -- cgit v1.2.3 From 553404ab9739b1f4114f0e8f1a9382c279ae76a8 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Sun, 29 May 2016 18:11:23 +0200 Subject: Fix RT [perl #72156] Re: Perl 5.12.0 RC 0 - Pager detection (#4) Author: Andy Dougherty 2012-08-02 20:16:47 Instruct ./getfile to trust the default pager value. It might not begin with a slash, or it might include some options, such as"/usr/bin/less -R". This patch copies the pager.U file from the dist-3.5 directory, and then changes the 'fn=' line to trust the default. --- mcon/U/pager.U | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mcon/U/pager.U b/mcon/U/pager.U index d429438..e68cf8c 100644 --- a/mcon/U/pager.U +++ b/mcon/U/pager.U @@ -46,12 +46,15 @@ case "$pager" in esac ;; *) dflt="$pager" -?X: Instruct ./getfile to trust the hinted or previous pager value, -?X: even if it does not begin with a slash. For example, on os2, -?X: pager might be cmd /c more. See comments in Getfile.U. - fn="f/($pager)" ;; esac +?X: Instruct ./getfile to trust the default pager value, +?X: even if it does not begin with a slash. For example, on os2, +?X: pager might be cmd /c more. Also, it might include some options, +?X: such as '/usr/bin/less -R'. ./getfile would report that +?X: "/usr/bin/less -R" doesn't exist. +?X: See comments in Getfile.U. +fn="f/($dflt)" echo " " rp='What pager is used on your system?' . ./getfile -- cgit v1.2.3 From 9f910d66c936dfdff953e212376f1943af479509 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Fri, 9 Dec 2016 15:19:36 +0100 Subject: If cf_by is empty, try logname before whoami (#7) --- mcon/U/cf_who.U | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mcon/U/cf_who.U b/mcon/U/cf_who.U index d89b1d4..d7492c7 100644 --- a/mcon/U/cf_who.U +++ b/mcon/U/cf_who.U @@ -47,16 +47,19 @@ cf_time=`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1` ?X: cf_by=`( (logname) 2>/dev/null || whoami) 2>&1` ?X: Switch to emergency mode... -- RAM, 19/04/94 ?X: -?X: Parens needed to avoid error message if the program does not exist. +?X: Parentheses needed to avoid error message if the program does not exist. ?X: Uses case instead of $test so it can be put before $test is defined. ?X: Don't redirect to a file because on Ultrix (under script?) logname ?X: outputs a blank line first. This method will apparently work. -cf_by=`(logname) 2>/dev/null` case "$cf_by" in "") - cf_by=`(whoami) 2>/dev/null` + cf_by=`(logname) 2>/dev/null` case "$cf_by" in - "") cf_by=unknown ;; + "") + cf_by=`(whoami) 2>/dev/null` + case "$cf_by" in + "") cf_by=unknown ;; + esac ;; esac ;; esac -- cgit v1.2.3 From 774944e8132ad42466f4c93f29294eeed090a138 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Fri, 9 Dec 2016 15:22:06 +0100 Subject: First flurry of using $rm_try to clean op (#8) --- mcon/U/Unix.U | 9 +++++++-- mcon/U/byteorder.U | 4 ++-- mcon/U/ccflags.U | 4 ++-- mcon/U/charsize.U | 4 ++-- mcon/U/d_casti32.U | 4 ++-- mcon/U/d_castneg.U | 4 ++-- mcon/U/d_gconvert.U | 4 ++-- mcon/U/d_gnulibc.U | 4 ++-- mcon/U/d_sanemcmp.U | 4 ++-- mcon/U/d_stdstdio.U | 8 ++++---- mcon/U/d_strctcpy.U | 4 ++-- mcon/U/d_volatile.U | 4 ++-- mcon/U/doublesize.U | 4 ++-- mcon/U/ebcdic.U | 4 ++-- mcon/U/i_db.U | 6 +++--- mcon/U/i_dirent.U | 6 +++--- mcon/U/i_neterrno.U | 4 ++-- mcon/U/i_time.U | 4 ++-- mcon/U/intsize.U | 4 ++-- mcon/U/nblock_io.U | 6 +++--- mcon/U/ptrsize.U | 4 ++-- mcon/U/voidflags.U | 4 ++-- 22 files changed, 54 insertions(+), 49 deletions(-) diff --git a/mcon/U/Unix.U b/mcon/U/Unix.U index 5ab7fc3..122c21e 100644 --- a/mcon/U/Unix.U +++ b/mcon/U/Unix.U @@ -19,7 +19,7 @@ ?X: environment, then some of the following variables can be redefined in hint ?X: files. ?X: -?MAKE:Unix _a _o firstmakefile archobjs: Oldconfig +?MAKE:Unix _a _o firstmakefile archobjs rm_try: Oldconfig rm ?MAKE: -pick add $@ %< ?S:_a (lib_ext): ?S: This variable defines the extension used for ordinary libraries. @@ -44,7 +44,10 @@ ?S: or other facilities. For perl on OS/2, for example, this would ?S: include os2/os2.obj. ?S:. -?INIT:: Extra object files, if any, needed on this platform. +?S:rm_try: +?S: This is a cleanup variable for try test programs. +?S: Internal Configure use only. +?S:.?INIT:: Extra object files, if any, needed on this platform. ?INIT:archobjs='' : Define several unixisms. : Hints files or command line option can be used to override them. @@ -55,6 +58,8 @@ case "$_o" in '') _o='.o';; esac +rm_try="$rm -f try try$_exe a.out .out try.[cho] try.$_o core core.try* try.core*" + @if firstmakefile : Which makefile gets called first. This is used by make depend. case "$firstmakefile" in diff --git a/mcon/U/byteorder.U b/mcon/U/byteorder.U index ef2050a..9bd2467 100644 --- a/mcon/U/byteorder.U +++ b/mcon/U/byteorder.U @@ -7,7 +7,7 @@ ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:byteorder: cat contains echo n c Myread Oldconfig Loc +cc +ccflags rm _o +?MAKE:byteorder: cat contains echo n c Myread Oldconfig Loc +cc +ccflags rm_try _o ?MAKE: -pick add $@ %< ?S:byteorder: ?S: This variable holds the byte order. In the following, larger digits @@ -64,5 +64,5 @@ case "$order" in 4321) echo " big-endian." >&4;; esac byteorder=$order -$rm -f try.c try$_o +$rm_try diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index 32b040e..942e462 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -47,7 +47,7 @@ ?RCS: ?MAKE:ccflags ldflags lkflags cppflags optimize pthread locincpth: test cat \ Myread Guess Options Oldconfig gccversion mips_type +usrinc \ - package contains rm +cc cppstdin cppminus cpprun cpplast libpth \ + package contains rm rm_try +cc cppstdin cppminus cpprun cpplast libpth \ loclibpth hint ?MAKE: -pick add $@ %< ?S:ccflags: @@ -453,5 +453,5 @@ y) ;; n) echo "OK, that should do.";; esac -$rm -f try try.* core +$rm_try diff --git a/mcon/U/charsize.U b/mcon/U/charsize.U index f69fea7..ae3cd8b 100644 --- a/mcon/U/charsize.U +++ b/mcon/U/charsize.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:05:34 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:charsize: Assert Myread cat rm +cc +ccflags echo n c +?MAKE:charsize: Assert Myread cat rm_try +cc +ccflags echo n c ?MAKE: -pick add $@ %< ?S:charsize: ?S: This variable contains the value of the CHARSIZE symbol, which @@ -60,5 +60,5 @@ error) charsize=$size ;; esac -$rm -f try.* +$rm_try diff --git a/mcon/U/d_casti32.U b/mcon/U/d_casti32.U index 7641da8..6363761 100644 --- a/mcon/U/d_casti32.U +++ b/mcon/U/d_casti32.U @@ -23,7 +23,7 @@ ?X: ?X: Can the compiler cast large floats to 32-bit integers? ?X: -?MAKE:d_casti32: cat +cc +ccflags rm intsize Setvar test signal_t +?MAKE:d_casti32: cat +cc +ccflags rm_try intsize Setvar test signal_t ?MAKE: -pick add $@ %< ?S:d_casti32: ?S: This variable conditionally defines CASTI32, which indicates @@ -83,5 +83,5 @@ case "$yyy" in esac set d_casti32 eval $setvar -$rm -f try try.* +$rm_try diff --git a/mcon/U/d_castneg.U b/mcon/U/d_castneg.U index be8ae0e..517ac1c 100644 --- a/mcon/U/d_castneg.U +++ b/mcon/U/d_castneg.U @@ -23,7 +23,7 @@ ?X: ?X: Can the compiler cast negative / odd floats to unsigned values. ?X: -?MAKE:d_castneg castflags: cat +cc +ccflags rm Setvar signal_t +?MAKE:d_castneg castflags: cat +cc +ccflags rm_try Setvar signal_t ?MAKE: -pick add $@ %< ?S:d_castneg: ?S: This variable conditionally defines CASTNEG, which indicates @@ -139,5 +139,5 @@ case "$castflags" in esac set d_castneg eval $setvar -$rm -f try.* +$rm_try diff --git a/mcon/U/d_gconvert.U b/mcon/U/d_gconvert.U index efd24f0..af79327 100644 --- a/mcon/U/d_gconvert.U +++ b/mcon/U/d_gconvert.U @@ -21,7 +21,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:12:51 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_Gconvert: cat cc ccflags ldflags libs rm _o +?MAKE:d_Gconvert: cat cc ccflags ldflags libs rm_try _o ?MAKE: -pick add $@ %< ?S:d_Gconvert: ?S: This variable holds what Gconvert is defined as to convert @@ -124,7 +124,7 @@ esac for xxx_convert in $xxx_list; do echo "Trying $xxx_convert" - $rm -f try try$_o + $rm_try if $cc $ccflags -DTRY_$xxx_convert $ldflags -o try \ try.c $libs > /dev/null 2>&1 ; then echo "$xxx_convert" found. >&4 diff --git a/mcon/U/d_gnulibc.U b/mcon/U/d_gnulibc.U index 12b1fef..a839def 100644 --- a/mcon/U/d_gnulibc.U +++ b/mcon/U/d_gnulibc.U @@ -10,7 +10,7 @@ ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:d_gnulibc gnulibc_version: Myread Oldconfig Setvar rm \ +?MAKE:d_gnulibc gnulibc_version: Myread Oldconfig Setvar rm_try \ cat Compile run ?MAKE: -pick add $@ %< ?S:d_gnulibc: @@ -92,7 +92,7 @@ else gnulibc_version='' echo "You are not using the GNU C Library" fi -$rm -f try try.* glibc.ver +$rm_try glibc.ver set d_gnulibc eval $setvar diff --git a/mcon/U/d_sanemcmp.U b/mcon/U/d_sanemcmp.U index f87652c..f2dc7d9 100644 --- a/mcon/U/d_sanemcmp.U +++ b/mcon/U/d_sanemcmp.U @@ -13,7 +13,7 @@ ?RCS: patch61: created ?RCS: ?RCS: -?MAKE:d_sanemcmp: cat d_memcmp +cc +optimize +ccflags +libs +ldflags rm \ +?MAKE:d_sanemcmp: cat d_memcmp +cc +optimize +ccflags +libs +ldflags rm_try \ i_memory i_stdlib i_string i_unistd Oldconfig Setvar ?MAKE: -pick add $@ %< ?S:d_sanemcmp: @@ -82,7 +82,7 @@ EOCP fi ;; esac -$rm -f foo.* sanemcmp core +$rm_try foo.* sanemcmp set d_sanemcmp eval $setvar diff --git a/mcon/U/d_stdstdio.U b/mcon/U/d_stdstdio.U index e46cee1..fe3a853 100644 --- a/mcon/U/d_stdstdio.U +++ b/mcon/U/d_stdstdio.U @@ -27,7 +27,7 @@ ?RCS: ?MAKE:d_stdstdio d_stdiobase stdio_ptr stdio_cnt stdio_base \ stdio_bufsiz d_stdio_cnt_lval d_stdio_ptr_lval stdio_filbuf: cat \ - +cc +ccflags contains +ldflags +libs rm \ + +cc +ccflags contains +ldflags +libs rm_try \ Setvar Findhdr Oldconfig ?MAKE: -pick add $@ %< ?S:d_stdstdio: @@ -218,7 +218,7 @@ if $cc $ccflags $ldflags -o try try.c $libs >/dev/null 2>&1; then else echo "Your stdio doesn't appear very std." fi -$rm -f try.c try +$rm_try set d_stdstdio eval $setvar @@ -274,7 +274,7 @@ EOP else echo "Hmm. $filbuf doesn't seem to work." fi - $rm -f try.c try + $rm_try done case "$xxx" in notok) echo "I can't figure out how to access _filbuf" @@ -316,7 +316,7 @@ EOP else echo "However, it seems to be lacking the _base field." fi - $rm -f try.c try + $rm_try ;; esac set d_stdiobase diff --git a/mcon/U/d_strctcpy.U b/mcon/U/d_strctcpy.U index 5fbe8c9..c5e9c40 100644 --- a/mcon/U/d_strctcpy.U +++ b/mcon/U/d_strctcpy.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:34 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_strctcpy: cat rm cc Setvar +?MAKE:d_strctcpy: cat rm_try cc Setvar ?MAKE: -pick add $@ %< ?S:d_strctcpy: ?S: This variable conditionally defines the USE_STRUCT_COPY symbol, which @@ -49,5 +49,5 @@ else fi set d_strctcpy eval $setvar -$rm -f try.* +$rm_try diff --git a/mcon/U/d_volatile.U b/mcon/U/d_volatile.U index be17638..542f512 100644 --- a/mcon/U/d_volatile.U +++ b/mcon/U/d_volatile.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:57 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_volatile: cat +cc +ccflags rm Setvar +?MAKE:d_volatile: cat +cc +ccflags rm_try Setvar ?MAKE: -pick add $@ %< ?S:d_volatile: ?S: This variable conditionally defines the HASVOLATILE symbol, which @@ -75,5 +75,5 @@ else fi set d_volatile eval $setvar -$rm -f try.* +$rm_try diff --git a/mcon/U/doublesize.U b/mcon/U/doublesize.U index 15fc4cf..2fc5724 100644 --- a/mcon/U/doublesize.U +++ b/mcon/U/doublesize.U @@ -15,7 +15,7 @@ ?RCS: Revision 3.0 1993/08/18 12:08:06 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:doublesize: cat rm Myread +cc +ccflags +?MAKE:doublesize: cat rm_try Myread +cc +ccflags ?MAKE: -pick add $@ %< ?S:doublesize: ?S: This variable contains the value of the DOUBLESIZE symbol, which @@ -54,5 +54,5 @@ esac rp="What is the size of a double precision number (in bytes)?" . ./myread doublesize="$ans" -$rm -f try.c try +$rm_try diff --git a/mcon/U/ebcdic.U b/mcon/U/ebcdic.U index 87e875a..6a1dda3 100644 --- a/mcon/U/ebcdic.U +++ b/mcon/U/ebcdic.U @@ -13,7 +13,7 @@ ?RCS: Original author Jarkko Hietaniemi ?RCS: Merged into dist by Andy Dougherty July 13, 1998 ?RCS: -?MAKE:ebcdic: Compile Setvar cat rm run +?MAKE:ebcdic: Compile Setvar cat rm_try run ?MAKE: -pick add $@ %< ?S:ebcdic: ?S: This variable conditionally defines EBCDIC if this @@ -52,7 +52,7 @@ else echo "I'm unable to compile the test program." >&4 echo "I'll assume ASCII or some ISO Latin. Or UTF8." >&4 fi -$rm -f try try.* +$rm_try set ebcdic eval $setvar diff --git a/mcon/U/i_db.U b/mcon/U/i_db.U index df11bbc..dad068e 100644 --- a/mcon/U/i_db.U +++ b/mcon/U/i_db.U @@ -20,7 +20,7 @@ ?RCS: Revision 3.0.1.1 1994/08/29 16:21:50 ram ?RCS: patch32: created by ADO ?RCS: -?MAKE:i_db db_hashtype db_prefixtype: Inhdr +cc +ccflags rm contains cat \ +?MAKE:i_db db_hashtype db_prefixtype: Inhdr +cc +ccflags rm_try contains cat \ d_const ?MAKE: -pick add $@ %< ?S:i_db: @@ -94,7 +94,7 @@ EOCP echo "I can't seem to compile the test program." >&4 db_hashtype=int fi - $rm -f try.* + $rm_try echo "Your version of Berkeley DB uses $db_hashtype for hash." ;; *) db_hashtype=int @@ -136,7 +136,7 @@ EOCP echo "I can't seem to compile the test program." >&4 db_prefixtype='int' fi - $rm -f try.* + $rm_try echo "Your version of Berkeley DB uses $db_prefixtype for prefix." ;; *) db_prefixtype='int' diff --git a/mcon/U/i_dirent.U b/mcon/U/i_dirent.U index 16836dc..9a4b017 100644 --- a/mcon/U/i_dirent.U +++ b/mcon/U/i_dirent.U @@ -29,7 +29,7 @@ ?X: This unit looks whether there is a dirent system or not ?X: ?MAKE:i_dirent d_dirnamlen direntrytype: test contains Setvar \ - Myread Findhdr cppstdin cppflags cppminus rm + Myread Findhdr cppstdin cppflags cppminus rm_try ?MAKE: -pick add $@ %< ?S:i_dirent: ?S: This variable conditionally defines I_DIRENT, which indicates @@ -124,7 +124,7 @@ else . ./myread direntrytype="$ans" fi -$rm -f try.c +$rm_try @end @@ -141,6 +141,6 @@ else fi set d_dirnamlen eval $setvar -$rm -f try.c +$rm_try @end diff --git a/mcon/U/i_neterrno.U b/mcon/U/i_neterrno.U index a0003e6..7bc231d 100644 --- a/mcon/U/i_neterrno.U +++ b/mcon/U/i_neterrno.U @@ -20,7 +20,7 @@ ?RCS: Revision 3.0.1.1 1994/06/20 07:02:05 ram ?RCS: patch30: created by ADO ?RCS: -?MAKE:i_neterrno: Inhdr +cc +ccflags rm Setvar +?MAKE:i_neterrno: Inhdr +cc +ccflags rm_try Setvar ?MAKE: -pick add $@ %< ?S:i_neterrno: ?S: This variable conditionally defines the I_NET_ERRNO symbol, which @@ -57,7 +57,7 @@ EOM echo "We won't be including ." >&4 val="$undef" fi - $rm -f try.* try + $rm_try ;; esac set i_neterrno diff --git a/mcon/U/i_time.U b/mcon/U/i_time.U index 78448e5..cd7ec6d 100644 --- a/mcon/U/i_time.U +++ b/mcon/U/i_time.U @@ -17,7 +17,7 @@ ?X: program, we also try to find which header should be included. Eventually, ?X: we look for if I_SYSSELECT is used, to get struct timeval. ?X: -?MAKE:i_time i_systime i_systimek timeincl: cat cc ccflags contains rm \ +?MAKE:i_time i_systime i_systimek timeincl: cat cc ccflags contains rm_try \ echo n c +i_sysselct Findhdr ?MAKE: -pick add $@ %< ?S:i_time: @@ -167,5 +167,5 @@ case "$flags" in esac esac @end -$rm -f try.c try +$rm_try diff --git a/mcon/U/intsize.U b/mcon/U/intsize.U index 6ec3c8b..d5135db 100644 --- a/mcon/U/intsize.U +++ b/mcon/U/intsize.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:intsize longsize shortsize: Assert Myread cat rm +cc +ccflags echo n c +?MAKE:intsize longsize shortsize: Assert Myread cat rm_try +cc +ccflags echo n c ?MAKE: -pick add $@ %< ?S:intsize: ?S: This variable contains the value of the INTSIZE symbol, which @@ -85,5 +85,5 @@ EOCP ;; esac done -$rm -f try.* +$rm_try diff --git a/mcon/U/nblock_io.U b/mcon/U/nblock_io.U index 1bbaf3d..58dd845 100644 --- a/mcon/U/nblock_io.U +++ b/mcon/U/nblock_io.U @@ -21,7 +21,7 @@ ?X: Simplify here document for shells that can't handle them well. ?X: (Problem reported on FreeBSD; it's unclear if this helps.) --AD ?X: -?MAKE:o_nonblock eagain rd_nodata d_eofnblk: cat rm +cc +ccflags +ldflags \ +?MAKE:o_nonblock eagain rd_nodata d_eofnblk: cat rm_try +cc +ccflags +ldflags \ d_open3 h_sysfile h_fcntl signal_t hint Oldconfig Setvar startsh Warn ?MAKE: -pick add $@ %< ?S:o_nonblock: @@ -127,7 +127,7 @@ EOCP ;; *) echo "Using $hint value $o_nonblock.";; esac -$rm -f try try.* .out core +$rm_try echo " " echo "Let's see what value errno gets from read() on a $o_nonblock file..." >&4 @@ -257,5 +257,5 @@ EOCP esac ;; esac -$rm -f try try.* .out core head.c mtry +$rm_try head.c mtry diff --git a/mcon/U/ptrsize.U b/mcon/U/ptrsize.U index ccefbfe..ed77a4a 100644 --- a/mcon/U/ptrsize.U +++ b/mcon/U/ptrsize.U @@ -8,7 +8,7 @@ ?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: -?MAKE:ptrsize: Assert Myread cat rm +cc +ccflags echo n c +?MAKE:ptrsize: Assert Myread cat rm_try +cc +ccflags echo n c ?MAKE: -pick add $@ %< ?S:ptrsize: ?S: This variable contains the value of the PTRSIZE symbol, which @@ -49,5 +49,5 @@ error) ptrsize=$size ;; esac -$rm -f try.* +$rm_try diff --git a/mcon/U/voidflags.U b/mcon/U/voidflags.U index 619aa14..0e0f49c 100644 --- a/mcon/U/voidflags.U +++ b/mcon/U/voidflags.U @@ -18,7 +18,7 @@ ?RCS: Revision 3.0 1993/08/18 12:10:01 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:voidflags defvoidused: cat sed rm contains +cc +ccflags package \ +?MAKE:voidflags defvoidused: cat sed rm rm_try contains +cc +ccflags package \ Oldconfig Myread ?MAKE: -pick add $@ %< ?S:voidflags: @@ -176,5 +176,5 @@ case "$voidflags" in voidflags="$ans" ;; esac -$rm -f try.* .out flags +$rm_try flags -- cgit v1.2.3 From bb6240c8e823af678db1668da579ba0de75d8936 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Fri, 9 Dec 2016 15:23:01 +0100 Subject: disable semaphores on freebsd if not configured (#9) I cannot find the original commit message to this fix in the perl tree, but - even if outdated - seems very legit --- mcon/U/d_sem.U | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_sem.U b/mcon/U/d_sem.U index 14690c2..d4c59aa 100644 --- a/mcon/U/d_sem.U +++ b/mcon/U/d_sem.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:07:03 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_sem: test d_semctl d_semget d_semop Setvar Findhdr +?MAKE:d_sem: test d_semctl d_semget d_semop Setvar Findhdr osname ?MAKE: -pick add $@ %< ?S:d_sem: ?S: This variable conditionally defines the HAS_SEM symbol, which @@ -32,6 +32,23 @@ echo " " case "$d_semctl$d_semget$d_semop" in *"$undef"*) h_sem=false;; esac +case "$osname" in +freebsd) + case "`ipcs 2>&1`" in + "SVID messages"*"not configured"*) + echo "Your $osname does not have the sem*(2) configured." >&4 + h_sem=false + val="$undef" + set semctl d_semctl + eval $setvar + set semget d_semget + eval $setvar + set semop d_semop + eval $setvar + ;; + esac + ;; +esac : we could also check for sys/ipc.h ... if $h_sem && $test `./findhdr sys/sem.h`; then echo "You have the full sem*(2) library." >&4 -- cgit v1.2.3 From f8c438d50741a5c4bc09d503f1b895b373f1aa5a Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Fri, 9 Dec 2016 15:23:21 +0100 Subject: disable messaging on freebsd if not configured (#10) I cannot find the original commit message to this fix in the perl tree, but - even if outdated - seems very legit --- mcon/U/d_msg.U | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/mcon/U/d_msg.U b/mcon/U/d_msg.U index 478d856..748da6a 100644 --- a/mcon/U/d_msg.U +++ b/mcon/U/d_msg.U @@ -12,7 +12,7 @@ ?RCS: Revision 3.0 1993/08/18 12:06:37 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_msg: test d_msgctl d_msgget d_msgsnd d_msgrcv Setvar Findhdr +?MAKE:d_msg: test d_msgctl d_msgget d_msgsnd d_msgrcv Setvar Findhdr osname ?MAKE: -pick add $@ %< ?S:d_msg: ?S: This variable conditionally defines the HAS_MSG symbol, which @@ -32,6 +32,25 @@ echo " " case "$d_msgctl$d_msgget$d_msgsnd$d_msgrcv" in *"$undef"*) h_msg=false;; esac +case "$osname" in +freebsd) + case "`ipcs 2>&1`" in + "SVID messages"*"not configured"*) + echo "Your $osname does not have the msg*(2) configured." >&4 + h_msg=false + val="$undef" + set msgctl d_msgctl + eval $setvar + set msgget d_msgget + eval $setvar + set msgsnd d_msgsnd + eval $setvar + set msgrcv d_msgrcv + eval $setvar + ;; + esac + ;; +esac : we could also check for sys/ipc.h ... if $h_msg && $test `./findhdr sys/msg.h`; then echo "You have the full msg*(2) library." >&4 -- cgit v1.2.3 From f86879f9a187c34ba729c895a7523714736250c2 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Fri, 9 Dec 2016 15:24:01 +0100 Subject: Housekeeping (#11) This is not complained about by mlint, but it just looks right to declare what we use --- mcon/U/issymlink.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/issymlink.U b/mcon/U/issymlink.U index cac0ad0..f1a159f 100644 --- a/mcon/U/issymlink.U +++ b/mcon/U/issymlink.U @@ -23,6 +23,7 @@ ?S:. ?T:pth p ?LINT:change PATH test +?LINT:extern newsh : determine whether symbolic links are supported echo " " case "$lns" in @@ -64,7 +65,7 @@ case "$lns" in ;; *) issymlink='' ;; esac - fi + fi fi if $test "X$issymlink" = X; then if $test -L sym 2>/dev/null; then -- cgit v1.2.3 From e17476b806aad1f8da32470141419a79a9fe1a78 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sat, 13 May 2017 13:50:42 +0200 Subject: process_command: be more explicit about errors when opening units. --- mcon/pl/configure.pl | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mcon/pl/configure.pl b/mcon/pl/configure.pl index a5aed29..d99d74b 100644 --- a/mcon/pl/configure.pl +++ b/mcon/pl/configure.pl @@ -77,7 +77,8 @@ sub process_command { warn "\t $msg\n"; } } - die "Can't open $file.\n" unless open(UNIT, $file); + die "Can't open $file.($name for target $target): $!\n" + unless open(UNIT, $file); print "\t$cmd $file\n" if $opt_v; &init_interp; # Initializes the interpreter @@ -215,9 +216,9 @@ sub process_command { elsif ($cmd eq 'prepend') { if (-s $file) { open(PREPEND, ">.prepend") || - die "Can't create .MT/.prepend.\n"; + die "Can't create .MT/.prepend: $!\n"; open(TARGET, $Unit{$target}) || - die "Can't open $Unit{$target}.\n"; + die "Can't open unit $Unit{$target}: $!\n"; while () { print PREPEND unless &skipped; } @@ -225,7 +226,7 @@ sub process_command { close PREPEND; close TARGET; rename('.prepend', $file) || - die "Can't rename .prepend into $file.\n"; + die "Can't rename .prepend into $file: $!\n"; } } -- cgit v1.2.3 From 400b5416d705dfa1c25eaefa9f2dcccf142a77c6 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sat, 13 May 2017 14:59:32 +0200 Subject: Enhanced metalint to better validate ?MAKE: lines. In particular, validate the special "pick" command further to avoid nasty surprises when running metaconfig. --- mcon/man/mlint.SH | 19 +++++++++++++++++++ mcon/pl/lint.pl | 44 +++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 62 insertions(+), 1 deletion(-) diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index ea20938..597fb3c 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -113,6 +113,12 @@ Print version number and exit. .SH DIAGNOSTICS The following diagnostics may be emitted by \fImetalint\fR: .TP 5 +"(?MAKE) command line must start with a leading TAB character." +Self explainatory. +.TP +"(?MAKE) fourth pick argument is missing." +Self explainatory. +.TP "(?MAKE) ignoring duplicate dependency listing line." More than one ?MAKE: line bearing dependencies was found in the unit. There may be only one such line, although multiple ?MAKE action lines may occur. @@ -136,6 +142,19 @@ Symbol is listed as a normal dependency and as a conditional one. will consider this as being a full dependency, but that may not be what you initially wanted... .TP +"(?MAKE) pick needs a command argument." +There is no command name after the special "pick" directive, which is invalid. +.TP +"(?MAKE) third pick argument must be $@. +The third argument to the special "pick" directive must be $@, litterally. +.TP +"(?MAKE) unknown pick command 'xxx'. +The command argument listed for the special "pick" directive is unknown. +.TP +"(?MAKE) weird fourth argument 'xxx' to pick. +The fourth argument for pick, the target file, should be a unit name, a file +path introduced by "./" or the special "%<" token. +.TP "(?Y) unknown layout directive 'xxx'." Layout directives may only be one of \fItop\fR, \fIdefault\fR or \fIbottom\fR, but case does not matter. An unknown directive is just ignored and diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index 64bb466..3762e3d 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -125,6 +125,48 @@ sub init_extraction { sub end_extraction { } +# Process the command line of ?MAKE: lines +sub p_make_command { + local ($_) = @_; + my $where = "\"$file\", line $. (?MAKE:)"; + unless (s/^\t+//) { + warn "$where: command line must start with a leading TAB character.\n"; + s/^\s+//; # Remove spaces and continue + } + return unless s/^-?pick\b//; + # Validate the special "pick" make command, processed internally + # by metaconfig. + my %valid = map { $_ => 1 } qw( + add add.Config_sh add.Null + c_h_weed cm_h_weed close.Config_sh + prepend weed wipe + + ); + my $cmd; + $cmd = $1 if s/^\s+(\S+)//; + unless (defined $cmd) { + warn "$where: pick needs a command argument.\n"; + return; + } + $wiped_unit++ if $cmd eq 'wipe'; + warn "$where: unknown pick command '$cmd'.\n" unless $valid{$cmd}; + s/^\s+//; + unless (s/^\$\@//) { + warn "$where: third pick argument must be \$\@\n"; + return; + } + s/^\s+//; + my $target; + $target = $1 if s/^(\S+)//; + unless (defined $target) { + warn "$where: fourth pick argument is missing\n"; + return; + } + return if $target =~ m|^\./|; + warn "$where: weird fourth argument '$target' to pick.\n" + unless $target =~ /^\w+$/; +} + # Process the ?MAKE: line sub p_make { local($_) = @_; @@ -132,7 +174,7 @@ sub p_make { local(@dep); # Dependencies local($where) = "\"$file\", line $. (?MAKE:)"; unless (/^[\w+ ]*:/) { - $wiped_unit++ if /^\t+-pick\s+wipe\b/; + &p_make_command; return; # We only want the main dependency rule } warn "$where: ignoring duplicate dependency listing line.\n" -- cgit v1.2.3 From d487b1c1ed378f6221d8d0a43ea41e9a2e8ed865 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sat, 13 May 2017 15:02:44 +0200 Subject: d_gconvert: removed unused dependency _o. --- mcon/U/d_gconvert.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/d_gconvert.U b/mcon/U/d_gconvert.U index af79327..bc4d89e 100644 --- a/mcon/U/d_gconvert.U +++ b/mcon/U/d_gconvert.U @@ -21,7 +21,7 @@ ?RCS: Revision 3.0.1.1 1994/10/29 16:12:51 ram ?RCS: patch36: created by ADO ?RCS: -?MAKE:d_Gconvert: cat cc ccflags ldflags libs rm_try _o +?MAKE:d_Gconvert: cat cc ccflags ldflags libs rm_try ?MAKE: -pick add $@ %< ?S:d_Gconvert: ?S: This variable holds what Gconvert is defined as to convert -- cgit v1.2.3 From 99104a7e78bb3394d96c147d6582a71ebf0dc58b Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sat, 13 May 2017 15:04:24 +0200 Subject: Unix: an end-of-line was missing! --- mcon/U/Unix.U | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/U/Unix.U b/mcon/U/Unix.U index 122c21e..ed1d066 100644 --- a/mcon/U/Unix.U +++ b/mcon/U/Unix.U @@ -47,7 +47,8 @@ ?S:rm_try: ?S: This is a cleanup variable for try test programs. ?S: Internal Configure use only. -?S:.?INIT:: Extra object files, if any, needed on this platform. +?S:. +?INIT:: Extra object files, if any, needed on this platform. ?INIT:archobjs='' : Define several unixisms. : Hints files or command line option can be used to override them. -- cgit v1.2.3 From 027445a78b8cf92ffaf9233c5e271a776475a5c1 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sat, 13 May 2017 22:38:49 +0200 Subject: Fixed English typo. --- mcon/man/mlint.SH | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index 597fb3c..9ce0476 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -114,10 +114,10 @@ Print version number and exit. The following diagnostics may be emitted by \fImetalint\fR: .TP 5 "(?MAKE) command line must start with a leading TAB character." -Self explainatory. +Self explanatory. .TP "(?MAKE) fourth pick argument is missing." -Self explainatory. +Self explanatory. .TP "(?MAKE) ignoring duplicate dependency listing line." More than one ?MAKE: line bearing dependencies was found in the unit. There @@ -169,14 +169,14 @@ The unit describes a shell symbol entry which cannot be used externally since not listed as a dependency. .TP "(?S) syntax error in ?S: construct." -Self explainatory. +Self explanatory. .TP "(?C) duplicate description for symbol 'XXX'." C symbol is described more than once, and that will produce two entries for it in the Glossary. .TP "(?C) syntax error in ?C: construct." -Self explainatory. +Self explanatory. .TP "(?H) symbol 'XXX' was already defined." Apparently, two ?H: lines are defining the same C symbol. @@ -209,7 +209,7 @@ All the leading ?sym: constraints on the ?H: lines should be a valid shell or C symbol, defined in the unit. .TP "(?M) syntax error in ?M: construct." -Self explainatory. +Self explanatory. .TP "(?M) symbol 'xxx' already listed on a ?M: line in 'yyy'." A magic definition for symbol xxx is attempted, but another one was @@ -259,7 +259,7 @@ later perusal by \fIConfigure\fR) may only be created in special units. Exceptions allowed if the ?F: line is preceded by a proper ?LINT: hint. .TP "(?T) temporary symbol '\$xxx' multiply declared." -Self explainatory. +Self explanatory. .TP "directive should come after ?MAKE declarations." The directive listed between () at the beginning of this message should @@ -394,22 +394,22 @@ A shell symbol is defined by some units, obsoleted by others and used as a temporary. .TP "Shell symbol 'xxx' is both defined and obsoleted:" -Self explainatory. +Self explanatory. .TP "Shell symbol 'xxx' is both defined and used as temporary:" -Self explainatory. +Self explanatory. .TP "Shell symbol 'xxx' obsoleted also used as temporary:" -Self explainatory. +Self explanatory. .TP "definition of '\$xxx' not closed by '?S:.'." -Self explainatory. +Self explanatory. .TP "definition of 'XXX' not closed by '?C:.'." -Self explainatory. +Self explanatory. .TP "magic definition of 'xxx' not closed by '?M:.'." -Self explainatory. +Self explanatory. .TP "variable '\$xxx' is defined externally." A variable defined externally (i.e. in another unit) is used, without proper -- cgit v1.2.3 From 34e69dc68c71a9aa06e0c7da6a19010b4a67136c Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sat, 13 May 2017 22:40:16 +0200 Subject: Forgot to escape '$' in manual page... --- mcon/man/mlint.SH | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index 9ce0476..691291d 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -145,8 +145,8 @@ initially wanted... "(?MAKE) pick needs a command argument." There is no command name after the special "pick" directive, which is invalid. .TP -"(?MAKE) third pick argument must be $@. -The third argument to the special "pick" directive must be $@, litterally. +"(?MAKE) third pick argument must be \$@. +The third argument to the special "pick" directive must be \$@, litterally. .TP "(?MAKE) unknown pick command 'xxx'. The command argument listed for the special "pick" directive is unknown. -- cgit v1.2.3 From d527baa7163e2a896b69c9e7eff90607cc145059 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sat, 13 May 2017 22:47:48 +0200 Subject: Updated places listing obsolete email addresses of mine. --- Credits | 2 +- README | 2 +- bin/manilist.man | 2 +- bin/packinit.man | 2 +- bin/perload | 2 +- dist.man | 2 +- jmake/jmkmf.man | 2 +- kit/kitpost.man | 2 +- kit/makedist.man | 2 +- kit/manifake.man | 2 +- mcon/man/mconfig.SH | 4 ++-- mcon/man/mlint.SH | 2 +- pat/pat.man | 2 +- 13 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Credits b/Credits index af26e33..8368c96 100644 --- a/Credits +++ b/Credits @@ -74,7 +74,7 @@ necessarily in that order ;-). Finally, thank you Shigeya Suzuki for hosting the dist-users mailing list. Send mail to majordomo@foretune.co.jp to subscribe. - Raphael Manfredi + Raphael Manfredi Lyon, France, August 1993 [This section added by subsequent patches] diff --git a/README b/README index 8417c81..86f250a 100644 --- a/README +++ b/README @@ -106,7 +106,7 @@ installation of the manual pages. 4) Read the manual entry before running. 5) IMPORTANT! Communicate any problem and suggested patches to me, -ram@hptnos02.grenoble.hp.com (Raphael Manfredi), so we can keep this +Raphael.Manfredi@pobox.com (Raphael Manfredi), so we can keep this distribution in sync. If you have a problem, there will be someone else who had it or will have it too... diff --git a/bin/manilist.man b/bin/manilist.man index 5ad455c..59db7a5 100644 --- a/bin/manilist.man +++ b/bin/manilist.man @@ -327,6 +327,6 @@ Default manifest file, listing files and giving a small description for each of them. .PD .SH AUTHOR -Raphael Manfredi +Raphael Manfredi .SH "SEE ALSO" manifake(1), makedist(1), pat(1). diff --git a/bin/packinit.man b/bin/packinit.man index 09702fb..bc954f0 100644 --- a/bin/packinit.man +++ b/bin/packinit.man @@ -143,6 +143,6 @@ File holding all the package-related values .SH AUTHORS Larry Wall (version 2.0) .br -Raphael Manfredi +Raphael Manfredi .SH "SEE ALSO" dist(1). diff --git a/bin/perload b/bin/perload index 4dc77c2..dbd2d97 100755 --- a/bin/perload +++ b/bin/perload @@ -635,7 +635,7 @@ multi-character value. I suspect this did not work with versions of \fIperl\fR prior to 4.0, so any script using this optimized form of dataloading will not be 100% backward compatible. .SH AUTHOR -Raphael Manfredi +Raphael Manfredi .SH CREDITS Valuable input came from Wayne H. Scott . He is merely the author of the optimizing offset table (\fB\-o\fR option). diff --git a/dist.man b/dist.man index bd6ba49..bfee179 100644 --- a/dist.man +++ b/dist.man @@ -308,7 +308,7 @@ Larry Wall (dist 2.0 in 1988) .br Harlan Stenn (worked on dist 3.0 1990-1992) .br -Raphael Manfredi (dist 3.0 and +Raphael Manfredi (dist 3.0 and integration 1991-1995) .sp Please look at the \fICredits\fR file in the distribution source tree for a diff --git a/jmake/jmkmf.man b/jmake/jmkmf.man index bea60d1..dde89a1 100644 --- a/jmake/jmkmf.man +++ b/jmake/jmkmf.man @@ -66,7 +66,7 @@ end of the name as in and .I make Makefiles. .SH AUTHOR -Raphael Manfredi +Raphael Manfredi .SH FILES .PD 0 .TP 20 diff --git a/kit/kitpost.man b/kit/kitpost.man index aad9ab2..ec44edd 100644 --- a/kit/kitpost.man +++ b/kit/kitpost.man @@ -84,6 +84,6 @@ Article cross-referencing is properly set-up only when the whole package is It is not currently possible to set-up the article headers manually or better, interactively. .SH AUTHOR -Raphael Manfredi +Raphael Manfredi .SH "SEE ALSO" makedist(1), kitsend(1). diff --git a/kit/makedist.man b/kit/makedist.man index 17af969..5c6b09d 100644 --- a/kit/makedist.man +++ b/kit/makedist.man @@ -137,7 +137,7 @@ Print version number and exit. .SH AUTHORS Larry Wall (version 2.0) .br -Raphael Manfredi +Raphael Manfredi .SH FILES Creates ./$package.kit* unless \fB\-c\fR option is used. .br diff --git a/kit/manifake.man b/kit/manifake.man index bfad581..8c76ba7 100644 --- a/kit/manifake.man +++ b/kit/manifake.man @@ -32,7 +32,7 @@ thrown away. will typically be used when converting an existing package to use \fImetaconfig\fR or any other dist utility. .SH AUTHOR -Raphael Manfredi +Raphael Manfredi .SH FILES .PD 0 .TP 20 diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH index 39f2692..f205fb7 100755 --- a/mcon/man/mconfig.SH +++ b/mcon/man/mconfig.SH @@ -349,7 +349,7 @@ Put the unit into the public or private U directory as appropriate. .IP \(bu Rerun \fImetaconfig\fR. .IP \(bu -Send your unit to ram@acri.fr (Raphael Manfredi) for inclusion +Send your unit to Raphael.Manfredi@pobox.com (Raphael Manfredi) for inclusion in the master copy, if you think it's of general interest. .PP In order to add a new program to be located: @@ -2077,7 +2077,7 @@ Larry Wall for version 2.0. .br Harlan Stenn for important unit extensions. .br -Raphael Manfredi . +Raphael Manfredi . .br Many other contributors for the \fImetaconfig\fR units. See the credit file for a list. diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index 691291d..205a7c6 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -555,7 +555,7 @@ listed file is used (do not prepend name with '!' for temporary ones) Harlan Stenn wrote the first version, based on Larry Wall's \fImetaconfig\fR from dist 2.0. .br -Raphael Manfredi rewrote it from scratch for +Raphael Manfredi rewrote it from scratch for 3.0 with a few enhancements. .SH FILES .TP 10 diff --git a/pat/pat.man b/pat/pat.man index e950620..67a97b5 100644 --- a/pat/pat.man +++ b/pat/pat.man @@ -509,5 +509,5 @@ Most of this should be built into RCS. .SH AUTHORS Larry Wall (version 2.0). .br -Raphael Manfredi . +Raphael Manfredi . .rn }` '' -- cgit v1.2.3 From 769f306c6c3fb3d5f39a1666932b71452879bdbc Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sun, 14 May 2017 09:14:17 +0200 Subject: Further enhanced ?MAKE: checks for pick to watch for %<. The last argument of the pick command is the target, usually the current unit name, or an explicit relative path. If it is the unit name, then it is better represented by using the %< macro in case the unit file is copied or renamed later. --- mcon/man/mlint.SH | 7 +++++++ mcon/pl/lint.pl | 2 ++ 2 files changed, 9 insertions(+) diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index 205a7c6..8910b88 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -119,6 +119,13 @@ Self explanatory. "(?MAKE) fourth pick argument is missing." Self explanatory. .TP +"(?MAKE) fourth pick argument should probably be the %< macro." +When the fourth argument is not a relative path, it is expected to be the +current unit name, which is best described using the "%<" string, a macro +handled by +.I metaconfig +and which is substituted with the current unit name. +.TP "(?MAKE) ignoring duplicate dependency listing line." More than one ?MAKE: line bearing dependencies was found in the unit. There may be only one such line, although multiple ?MAKE action lines may occur. diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index 3762e3d..5a70598 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -165,6 +165,8 @@ sub p_make_command { return if $target =~ m|^\./|; warn "$where: weird fourth argument '$target' to pick.\n" unless $target =~ /^\w+$/; + warn "$where: fourth pick argument should probably be the %< macro.\n" + unless $target eq $unit; } # Process the ?MAKE: line -- cgit v1.2.3 From 910e8f31933d2737de501a445b0cb6ddf9e2251f Mon Sep 17 00:00:00 2001 From: mauke Date: Fri, 13 Oct 2017 16:21:21 +0200 Subject: fix @wiping initialization (#12) qw(...) cannot contain comments. The previous "comment" was interpreted as part of the qw list. --- mcon/pl/lint.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index 5a70598..08acb28 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -110,7 +110,8 @@ sub init_extraction { @make = (); # Records make dependency lines $body = 'p_body'; # Procedure to handle body $ending = 'p_end'; # Called at the end of each unit - @wiping = qw( # The keywords we recognize for "wiped" units + @wiping = # The keywords we recognize for "wiped" units + qw( PACKAGENAME MAINTLOC VERSION -- cgit v1.2.3 From 06e93d9d534a84de9902164cc75d9b98bfadc452 Mon Sep 17 00:00:00 2001 From: mauke Date: Fri, 13 Oct 2017 17:47:00 +0200 Subject: fix typo in variable name (#13) --- mcon/pl/lint.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index 08acb28..0120c51 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -798,7 +798,7 @@ sub p_body { # afterwards... my $check_vars = 1; - $chek_vars = 0 if $heredoc_nosubst && !$began_here; + $check_vars = 0 if $heredoc_nosubst && !$began_here; # Record any attempt made to set a shell variable local($sym); -- cgit v1.2.3 From 4522d060c8e2be12b054d1e883f66879cc610a77 Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Mon, 23 Oct 2017 18:13:51 +0100 Subject: New "-X exclusions-file" option for mconfig Packages can use this option to list symbols that shouldn't bring in the corresponding units. For example, Perl need not provide support for BSD index(3) as an alternative to C89 strchr(3), but "index" is the name of a Perl builtin, so that string in the source files is misunderstood by metaconfig as an attempt to use the BSD function. With this change, Perl can deal with this situation by adding "index" (and "rindex") to an exclusion list. --- mcon/man/mconfig.SH | 11 +++++++++++ mcon/mconfig.SH | 5 ++++- mcon/pl/depend.pl | 3 +++ mcon/pl/wanted.pl | 19 +++++++++++++++++++ 4 files changed, 37 insertions(+), 1 deletion(-) diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH index f205fb7..ba415e2 100755 --- a/mcon/man/mconfig.SH +++ b/mcon/man/mconfig.SH @@ -528,6 +528,17 @@ option permanently. .TP .B \-V Print version number and exit. +.TP +\fB\-X\fI file\fR +When examining the source files, ignore any symbols listed in the \fIfile\fR. +This is useful in situations where a particular unit is known not to be needed +for your package's portability targets, but your source files nevertheless +contain occurrences of words that look to \fImetaconfig\fR like symbols defined +in that unit. (For example, you might need the word "index" in a source file, +but not need the unit that determines whether \fIstrcpy\fR or \fIindex\fR +should be used.) +The \fIfile\fR can contain blank lines, comment lines introduced with '#', and +lines containing a single symbol. ''' ''' T u t o r i a l ''' diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index c9c295f..7f89325 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -68,8 +68,10 @@ chop($date = `date`); &profile; # Read ~/.dist_profile use Getopt::Std; -&usage unless getopts("dhkmostvwGMVL:"); +&usage unless getopts("dhkmostvwGMVL:X:"); +my %excluded_symbol; +read_exclusions($opt_X) if defined $opt_X; $MC = $opt_L if $opt_L; # May override public library path $MC = &tilda_expand($MC); # ~name expansion chop($WD = `pwd`); # Working directory @@ -164,6 +166,7 @@ Usage: metaconfig [-dhkmostvwGMV] [-L dir] -L : specify main units repository. -M : activate production of confmagic.h. -V : print version number and exits. + -X FILE : read symbol exclusions from FILE EOH exit 1; } diff --git a/mcon/pl/depend.pl b/mcon/pl/depend.pl index fc88f1a..e31eded 100644 --- a/mcon/pl/depend.pl +++ b/mcon/pl/depend.pl @@ -52,6 +52,9 @@ sub p_wanted { $cmaster{$_} = undef; # Asks for look-up in C files $cwanted{$_} = "$active" if $active; # Shell symbols to activate } + + delete @cmaster{keys %excluded_symbol}; + delete @cwanted{keys %excluded_symbol}; } # Process the ?INIT: lines diff --git a/mcon/pl/wanted.pl b/mcon/pl/wanted.pl index 20d218c..6a44039 100644 --- a/mcon/pl/wanted.pl +++ b/mcon/pl/wanted.pl @@ -39,6 +39,25 @@ ;# ;# The manifake() routine has to be provided externally. ;# +sub read_exclusions { + my ($filename) = @_; + print "Reading exclusions from $filename...\n" unless $opt_s; + open(EXCLUSIONS, "< $filename\0") || die "Can't read $filename: $!\n"; + local $_; + while () { + if (/^\s*#|^\s*$/) { + # comment or blank line, ignore + } + elsif (/^\s*(\w+)\s*$/) { + $excluded_symbol{$1} = 1; + } + else { + die "$filename:$.: unrecognised line\n"; + } + } + close(EXCLUSIONS) || die "Can't close $filename: $!\n"; +} + # Build a wanted file from the files held in @SHlist and @clist arrays sub build_wanted { # If wanted file is already there, parse it to map obsolete if -o option -- cgit v1.2.3 From 725b65bac4a3e5257179db89d1134ec126ca208f Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Tue, 24 Oct 2017 17:30:59 +0100 Subject: Fix usage help for "mconfig -X" --- mcon/mconfig.SH | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index 7f89325..77a2e1e 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -152,7 +152,7 @@ sub init_except { # Print out metaconfig's usage and exits sub usage { print STDERR <<'EOH'; -Usage: metaconfig [-dhkmostvwGMV] [-L dir] +Usage: metaconfig [-dhkmostvwGMV] [-L dir] [-X file] -d : debug mode. -h : print this help message and exits. -k : keep temporary directory. @@ -166,7 +166,7 @@ Usage: metaconfig [-dhkmostvwGMV] [-L dir] -L : specify main units repository. -M : activate production of confmagic.h. -V : print version number and exits. - -X FILE : read symbol exclusions from FILE + -X : read symbol exclusions from FILE EOH exit 1; } -- cgit v1.2.3 From cb2b5788e3a043ab23b2ec54670723c93ef70e1b Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Tue, 24 Oct 2017 18:20:04 +0100 Subject: Use a "%" sigil when calling Perl keys() / each() This usage has produced a depreaction warning since Perl 5.000, and was finally removed in Perl 5.22. --- kit/makedist.SH | 2 +- mcon/pl/xwant.pl | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/kit/makedist.SH b/kit/makedist.SH index 2c41a4a..f40d5c5 100755 --- a/kit/makedist.SH +++ b/kit/makedist.SH @@ -273,7 +273,7 @@ sub manimake { Filename Kit Description -------- --- ----------- "; - for (sort keys(comment)) { + for (sort keys(%comment)) { printf PACKLIST "%-27s %2s %.47s\n", $_, $kit{$_}, $comment{$_}; } close PACKLIST; diff --git a/mcon/pl/xwant.pl b/mcon/pl/xwant.pl index 31508eb..e1bbf20 100644 --- a/mcon/pl/xwant.pl +++ b/mcon/pl/xwant.pl @@ -49,7 +49,7 @@ sub build_xref { print " Scanning .[chyl] files for symbols...\n" unless $opt_s; $search = ' ' x (40 * (@cmaster + @ocmaster)); # Pre-extend $search = "while (<>) {study;\n"; # Init loop over ARGV - foreach $key (keys(cmaster)) { + foreach $key (keys(%cmaster)) { $search .= "\$cmaster{'$key'} .= \"\$ARGV#\" if /\\b$key\\b/;\n"; } foreach $key (grep(!/^\$/, keys %Obsolete)) { @@ -63,7 +63,7 @@ sub build_xref { eval $search; eval ''; $/ = "\n"; - while (($key,$value) = each(cmaster)) { + while (($key,$value) = each(%cmaster)) { next if $value eq ''; foreach $file (sort(split(/#/, $value))) { next if $file eq ''; @@ -94,7 +94,7 @@ sub build_xref { $search = ' ' x (40 * (@shmaster + @oshmaster)); # Pre-extend $search = "while (<>) {study;\n"; # All the keys already have a leading '$' - foreach $key (keys(shmaster)) { + foreach $key (keys(%shmaster)) { $search .= "\$shmaster{'$key'} .= \"\$ARGV#\" if /\\$key\\b/;\n"; } foreach $key (grep (/^\$/, keys %Obsolete)) { @@ -108,7 +108,7 @@ sub build_xref { eval $search; eval ''; $/ = "\n"; - while (($key,$value) = each(shmaster)) { + while (($key,$value) = each(%shmaster)) { next if $value eq ''; foreach $file (sort(split(/#/, $value))) { next if $file eq ''; -- cgit v1.2.3 From 9a6a95281df0a1aae6bb08e9f8dbdd226d33db28 Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Tue, 24 Oct 2017 18:36:14 +0100 Subject: Move read_exclusions() function to files.pl --- mcon/pl/files.pl | 19 +++++++++++++++++++ mcon/pl/wanted.pl | 19 ------------------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/mcon/pl/files.pl b/mcon/pl/files.pl index 3962fa6..b983832 100644 --- a/mcon/pl/files.pl +++ b/mcon/pl/files.pl @@ -106,3 +106,22 @@ sub q { $_; } +sub read_exclusions { + my ($filename) = @_; + print "Reading exclusions from $filename...\n" unless $opt_s; + open(EXCLUSIONS, "< $filename\0") || die "Can't read $filename: $!\n"; + local $_; + while () { + if (/^\s*#|^\s*$/) { + # comment or blank line, ignore + } + elsif (/^\s*(\w+)\s*$/) { + $excluded_symbol{$1} = 1; + } + else { + die "$filename:$.: unrecognised line\n"; + } + } + close(EXCLUSIONS) || die "Can't close $filename: $!\n"; +} + diff --git a/mcon/pl/wanted.pl b/mcon/pl/wanted.pl index 6a44039..20d218c 100644 --- a/mcon/pl/wanted.pl +++ b/mcon/pl/wanted.pl @@ -39,25 +39,6 @@ ;# ;# The manifake() routine has to be provided externally. ;# -sub read_exclusions { - my ($filename) = @_; - print "Reading exclusions from $filename...\n" unless $opt_s; - open(EXCLUSIONS, "< $filename\0") || die "Can't read $filename: $!\n"; - local $_; - while () { - if (/^\s*#|^\s*$/) { - # comment or blank line, ignore - } - elsif (/^\s*(\w+)\s*$/) { - $excluded_symbol{$1} = 1; - } - else { - die "$filename:$.: unrecognised line\n"; - } - } - close(EXCLUSIONS) || die "Can't close $filename: $!\n"; -} - # Build a wanted file from the files held in @SHlist and @clist arrays sub build_wanted { # If wanted file is already there, parse it to map obsolete if -o option -- cgit v1.2.3 From e66b85ddbd27bb2a83eb28de957a3a0a276b7056 Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Tue, 24 Oct 2017 18:36:29 +0100 Subject: Support "-X exclusions-file" option in metaxref Otherwise, when mconfig is run with that option, the metaxref would confusingly refer to excluded symbols. --- mcon/man/mxref.SH | 11 +++++++++++ mcon/mxref.SH | 7 +++++-- mcon/pl/xref.pl | 3 +++ 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/mcon/man/mxref.SH b/mcon/man/mxref.SH index b0dbbad..aa4c687 100755 --- a/mcon/man/mxref.SH +++ b/mcon/man/mxref.SH @@ -99,6 +99,17 @@ can be found). .TP .B \-V Print version number and exit. +.TP +\fB\-X\fI file\fR +When examining the source files, ignore any symbols listed in the \fIfile\fR. +This is useful in situations where a particular unit is known not to be needed +for your package's portability targets, but your source files nevertheless +contain occurrences of words that look to \fImetaconfig\fR like symbols defined +in that unit. (For example, you might need the word "index" in a source file, +but not need the unit that determines whether \fIstrcpy\fR or \fIindex\fR +should be used.) +The \fIfile\fR can contain blank lines, comment lines introduced with '#', and +lines containing a single symbol. .SH AUTHOR Harlan Stenn .SH FILES diff --git a/mcon/mxref.SH b/mcon/mxref.SH index 5c45c1e..6050d3a 100755 --- a/mcon/mxref.SH +++ b/mcon/mxref.SH @@ -60,10 +60,12 @@ $spitshell >>mxref <<'!NO!SUBS!' &profile; # Read ~/.dist_profile use Getopt::Std; -&usage unless getopts("df:hkmsVL:"); +&usage unless getopts("df:hkmsVL:X:"); chop($date = `date`); chop($WD = `pwd`); # Working directory +my %excluded_symbol; +read_exclusions($opt_X) if defined $opt_X; $MC = $opt_L if $opt_L; # May override library path $MC = &tilda_expand($MC); # ~name expansion chdir $MC || die "Can't chdir to $MC: $!\n"; @@ -119,7 +121,7 @@ sub init_except { # Print out metaxref's usage and exits sub usage { print STDERR < Date: Tue, 24 Oct 2017 19:27:43 +0100 Subject: Allow exclusions file to be named in .package --- mcon/man/mconfig.SH | 2 ++ mcon/man/mxref.SH | 2 ++ mcon/mconfig.SH | 4 ++-- mcon/mxref.SH | 4 ++-- mcon/pl/files.pl | 7 +++++++ 5 files changed, 15 insertions(+), 4 deletions(-) diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH index ba415e2..e749330 100755 --- a/mcon/man/mconfig.SH +++ b/mcon/man/mconfig.SH @@ -539,6 +539,8 @@ but not need the unit that determines whether \fIstrcpy\fR or \fIindex\fR should be used.) The \fIfile\fR can contain blank lines, comment lines introduced with '#', and lines containing a single symbol. +If this option is not supplied, any \fI$exclusions_file\fR variable in +\fI.package\fR is honored instead. ''' ''' T u t o r i a l ''' diff --git a/mcon/man/mxref.SH b/mcon/man/mxref.SH index aa4c687..491bf1d 100755 --- a/mcon/man/mxref.SH +++ b/mcon/man/mxref.SH @@ -110,6 +110,8 @@ but not need the unit that determines whether \fIstrcpy\fR or \fIindex\fR should be used.) The \fIfile\fR can contain blank lines, comment lines introduced with '#', and lines containing a single symbol. +If this option is not supplied, any \fI$exclusions_file\fR variable in +\fI.package\fR is honored instead. .SH AUTHOR Harlan Stenn .SH FILES diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index 77a2e1e..5d37bc5 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -71,7 +71,7 @@ use Getopt::Std; &usage unless getopts("dhkmostvwGMVL:X:"); my %excluded_symbol; -read_exclusions($opt_X) if defined $opt_X; +read_exclusions($opt_X); $MC = $opt_L if $opt_L; # May override public library path $MC = &tilda_expand($MC); # ~name expansion chop($WD = `pwd`); # Working directory @@ -166,7 +166,7 @@ Usage: metaconfig [-dhkmostvwGMV] [-L dir] [-X file] -L : specify main units repository. -M : activate production of confmagic.h. -V : print version number and exits. - -X : read symbol exclusions from FILE + -X : read symbol exclusions from FILE (overriding .package) EOH exit 1; } diff --git a/mcon/mxref.SH b/mcon/mxref.SH index 6050d3a..d2730de 100755 --- a/mcon/mxref.SH +++ b/mcon/mxref.SH @@ -65,7 +65,7 @@ use Getopt::Std; chop($date = `date`); chop($WD = `pwd`); # Working directory my %excluded_symbol; -read_exclusions($opt_X) if defined $opt_X; +read_exclusions($opt_X); $MC = $opt_L if $opt_L; # May override library path $MC = &tilda_expand($MC); # ~name expansion chdir $MC || die "Can't chdir to $MC: $!\n"; @@ -130,7 +130,7 @@ Usage: metaxref [-dhkmsV] [-f manifest] [-L dir] [-X file] -s : silent mode. -L : specify main units repository. -V : print version number and exits. - -X : read symbol exclusions from FILE + -X : read symbol exclusions from FILE (overriding .package) EOM exit 1; } diff --git a/mcon/pl/files.pl b/mcon/pl/files.pl index b983832..a7d26a6 100644 --- a/mcon/pl/files.pl +++ b/mcon/pl/files.pl @@ -29,6 +29,9 @@ ;# extensions to their packages. For instance, perl5 adds .xs files holding ;# some C symbols. ;# +;# The read_exclusions() routine honours the .package $exclusions_file +;# variable if its argument is undefined. +;# # Extract filenames from manifest sub extract_filenames { &build_filext; # Construct &is_cfile and &is_shfile @@ -108,6 +111,10 @@ sub q { sub read_exclusions { my ($filename) = @_; + if (!defined $filename) { + $filename = $exclusions_file; # default to name from .package + return if !defined $filename || $filename eq ''; + } print "Reading exclusions from $filename...\n" unless $opt_s; open(EXCLUSIONS, "< $filename\0") || die "Can't read $filename: $!\n"; local $_; -- cgit v1.2.3 From 9eac7aacc8bace961cda535377b8f32272085096 Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Tue, 24 Oct 2017 19:36:46 +0100 Subject: Prompt for and set $exclusions_file in packinit --- bin/packinit.SH | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/bin/packinit.SH b/bin/packinit.SH index a3e8f25..58393da 100755 --- a/bin/packinit.SH +++ b/bin/packinit.SH @@ -191,6 +191,18 @@ EOM $shext = &myread('Additional file extensions to identify SH files?', $dflt); $shext = '' if $shext eq 'none'; +$dflt = 'none'; +print <<'EOM'; + +If your package sources contains symbols that metaconfig will mistake for the +names of symbols defined by its units, you can list them in an exclusions file. +(See the documentation of "mconfig -X".) What file would you like metaconfig to +consult for those symbols? Say "none" if you don't need to exclude any symbols. + +EOM +$exclusions_file = &myread('File to consult for excluded symbols?', $dflt); +$exclusions_file = '' if $exclusions_file eq 'none'; + $dflt = $copyright eq ' ' ? 'n' : 'y'; print <<'EOM'; @@ -426,6 +438,8 @@ changercs=$changercs : File lookup extensions cext='$cext' shext='$shext' +: File to consult for symbol exclusions +exclusions_file='$exclusions_file' : Mailing list variables list_users='$list_users' list_name='$list_name' -- cgit v1.2.3 From 3400d8a71038b079f7c7c8d80264071ddba4a63b Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Tue, 24 Oct 2017 21:34:16 +0100 Subject: Fix "metaconfig" name in packinit message --- bin/packinit.SH | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bin/packinit.SH b/bin/packinit.SH index 58393da..578b8d8 100755 --- a/bin/packinit.SH +++ b/bin/packinit.SH @@ -196,8 +196,9 @@ print <<'EOM'; If your package sources contains symbols that metaconfig will mistake for the names of symbols defined by its units, you can list them in an exclusions file. -(See the documentation of "mconfig -X".) What file would you like metaconfig to -consult for those symbols? Say "none" if you don't need to exclude any symbols. +(See the documentation of "metaconfig -X".) What file would you like metaconfig +to consult for those symbols? Say "none" if you don't need to exclude any +symbols. EOM $exclusions_file = &myread('File to consult for excluded symbols?', $dflt); -- cgit v1.2.3 From 890ae3e3f8b39b90d53e57455bbbf99795511225 Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Tue, 24 Oct 2017 21:34:38 +0100 Subject: Consistently use "file" in -X usage help --- mcon/mconfig.SH | 2 +- mcon/mxref.SH | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index 5d37bc5..4917e43 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -166,7 +166,7 @@ Usage: metaconfig [-dhkmostvwGMV] [-L dir] [-X file] -L : specify main units repository. -M : activate production of confmagic.h. -V : print version number and exits. - -X : read symbol exclusions from FILE (overriding .package) + -X : read symbol exclusions from file (overriding .package) EOH exit 1; } diff --git a/mcon/mxref.SH b/mcon/mxref.SH index d2730de..3433edc 100755 --- a/mcon/mxref.SH +++ b/mcon/mxref.SH @@ -130,7 +130,7 @@ Usage: metaxref [-dhkmsV] [-f manifest] [-L dir] [-X file] -s : silent mode. -L : specify main units repository. -V : print version number and exits. - -X : read symbol exclusions from FILE (overriding .package) + -X : read symbol exclusions from file (overriding .package) EOM exit 1; } -- cgit v1.2.3 From 94831e424ef8bb500cb1486bbe0b7f8bce41dc42 Mon Sep 17 00:00:00 2001 From: Dominic Hargreaves Date: Mon, 21 May 2018 11:03:56 +0200 Subject: Fix some syntax errors (#16) This fixes syntax errors in makedist, patbase, patcil, patclean, patcol, patdiff, patname, and patsnap. --- bin/manilist.SH | 2 +- kit/makedist.SH | 12 ++++++------ pl/makedir.pl | 2 +- pl/rcsargs.pl | 4 ++-- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/bin/manilist.SH b/bin/manilist.SH index 85c7b21..2e7ebf4 100755 --- a/bin/manilist.SH +++ b/bin/manilist.SH @@ -213,7 +213,7 @@ if ($opt_d) { } @manifest = sort @manifest; -@files = sort @files if defined(@files); +@files = sort @files if @files; # Build up the %manifest array so that we quickly know whether a file is in the # manifest or not. diff --git a/kit/makedist.SH b/kit/makedist.SH index f40d5c5..ccc9566 100755 --- a/kit/makedist.SH +++ b/kit/makedist.SH @@ -114,7 +114,7 @@ sub kitbuild { $list = $list[$kitnum]; $kit = sprintf("$package.kit" . $sp,$kitnum); print "*** Making $kit ***\n"; - open(KIT,">$curdir/$kit") || do fatal("Can't create $curdir/$kit: $!"); + open(KIT,">$curdir/$kit") || &fatal("Can't create $curdir/$kit: $!"); &kitleader; @@ -202,7 +202,7 @@ sub kitlists { } # Build a file PACKNOTES to reconstruct split files - if (defined %Chopped) { + if (%Chopped) { open(PACKNOTES, ">$PACKNOTES") || &fatal("Can't create PACKNOTES: $!"); foreach (keys %Chopped) { print PACKNOTES <) { ($key,$val) = split(' ',$_,1) unless ($key,$val) = /^(\S+)\s+(.*)/; $comment{$key} = $val; @@ -266,7 +266,7 @@ sub manimake { # Add built packlist $comment{$PACKLIST} = 'Which files came with which kits'; - open(PACKLIST, ">$PACKLIST") || do fatal("Can't create $PACKLIST: $!"); + open(PACKLIST, ">$PACKLIST") || &fatal("Can't create $PACKLIST: $!"); print PACKLIST "After all the $package kits are run you should have the following files: @@ -321,7 +321,7 @@ case \$todo in '') echo \"You have run all your kits.\" EOM - if (defined %Chopped) { # Some splitting occurred + if (%Chopped) { # Some splitting occurred print KIT <= 0 && do equiv($_,$_[0])) { + } elsif ($#_ >= 0 && &equiv($_,$_[0])) { $result .= $_ . ' ' . $_[0] . ' '; shift(@_); } else { - $result .= $_ . ' ' . do other($_) . ' '; + $result .= $_ . ' ' . &other($_) . ' '; } } $result; -- cgit v1.2.3 From 607d9bfd575f3cf99789042a232669951f24a562 Mon Sep 17 00:00:00 2001 From: Dominic Hargreaves Date: Mon, 21 May 2018 11:05:13 +0200 Subject: Fix man page comment schema (#17) The commenting scheme used in the man pages was three consecutive single quotes (`'''') at the beginning of a line. his works, but `gtroff' gives a warning about an undefined macro (namely `'''), which is harmless, but irritating. To avoid this, this commit changes the schema to start the line with `.\"' which causes the line to be treated as an undefined request and thus ignored completely. Signed-off-by: Manoj Srivastava [updated to current dist by Dominic Hargreaves ] --- bin/manicheck.man | 30 +++---- bin/manilist.man | 48 ++++++------ bin/packinit.man | 54 ++++++------- bin/perload | 6 +- dist.man | 68 ++++++++-------- jmake/jmake.man | 50 ++++++------ jmake/jmkmf.man | 34 ++++---- kit/kitpost.man | 34 ++++---- kit/kitsend.man | 34 ++++---- kit/makeSH.man | 30 +++---- kit/makedist.man | 52 ++++++------ kit/manifake.man | 34 ++++---- mcon/man/mconfig.SH | 222 ++++++++++++++++++++++++++-------------------------- mcon/man/mlint.SH | 96 +++++++++++------------ mcon/man/mxref.SH | 58 +++++++------- pat/pat.man | 90 ++++++++++----------- 16 files changed, 470 insertions(+), 470 deletions(-) diff --git a/bin/manicheck.man b/bin/manicheck.man index 35087c8..ba9fa2f 100644 --- a/bin/manicheck.man +++ b/bin/manicheck.man @@ -1,18 +1,18 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: manicheck.man,v $ -''' Revision 3.0 1993/08/18 12:04:02 ram -''' Baseline for dist 3.0 netwide release. -''' -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: manicheck.man,v $ +.\" Revision 3.0 1993/08/18 12:04:02 ram +.\" Baseline for dist 3.0 netwide release. +.\" +.\" .TH MANICHECK 1 ram .SH NAME manicheck \- check manifest accuracy diff --git a/bin/manilist.man b/bin/manilist.man index 59db7a5..1f60e3f 100644 --- a/bin/manilist.man +++ b/bin/manilist.man @@ -1,27 +1,27 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: manilist.man,v $ -''' Revision 3.0.1.3 1995/05/12 11:57:31 ram -''' patch54: updated my e-mail address -''' -''' Revision 3.0.1.2 1994/01/24 13:52:55 ram -''' patch16: typo fix -''' -''' Revision 3.0.1.1 1993/08/24 12:11:02 ram -''' patch3: typo fix -''' -''' Revision 3.0 1993/08/18 12:04:04 ram -''' Baseline for dist 3.0 netwide release. -''' -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: manilist.man,v $ +.\" Revision 3.0.1.3 1995/05/12 11:57:31 ram +.\" patch54: updated my e-mail address +.\" +.\" Revision 3.0.1.2 1994/01/24 13:52:55 ram +.\" patch16: typo fix +.\" +.\" Revision 3.0.1.1 1993/08/24 12:11:02 ram +.\" patch3: typo fix +.\" +.\" Revision 3.0 1993/08/18 12:04:04 ram +.\" Baseline for dist 3.0 netwide release. +.\" +.\" .TH MANILIST 1 ram .SH NAME manilist \- report status of files in a source directory diff --git a/bin/packinit.man b/bin/packinit.man index bc954f0..9756592 100644 --- a/bin/packinit.man +++ b/bin/packinit.man @@ -1,30 +1,30 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: packinit.man,v $ -''' Revision 3.0.1.4 1995/07/25 13:31:38 ram -''' patch56: fixed a typo -''' -''' Revision 3.0.1.3 1995/05/12 11:57:38 ram -''' patch54: updated my e-mail address -''' -''' Revision 3.0.1.2 1994/10/29 15:45:17 ram -''' patch36: added new variables cext, shext, changelog and changercs -''' -''' Revision 3.0.1.1 1994/01/24 13:54:31 ram -''' patch16: now documents variables set in .package by packinit -''' -''' Revision 3.0 1993/08/18 12:04:06 ram -''' Baseline for dist 3.0 netwide release. -''' -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: packinit.man,v $ +.\" Revision 3.0.1.4 1995/07/25 13:31:38 ram +.\" patch56: fixed a typo +.\" +.\" Revision 3.0.1.3 1995/05/12 11:57:38 ram +.\" patch54: updated my e-mail address +.\" +.\" Revision 3.0.1.2 1994/10/29 15:45:17 ram +.\" patch36: added new variables cext, shext, changelog and changercs +.\" +.\" Revision 3.0.1.1 1994/01/24 13:54:31 ram +.\" patch16: now documents variables set in .package by packinit +.\" +.\" Revision 3.0 1993/08/18 12:04:06 ram +.\" Baseline for dist 3.0 netwide release. +.\" +.\" .TH PACKINIT 1 ram .SH NAME packinit \- initialize or update your .package file diff --git a/bin/perload b/bin/perload index dbd2d97..14f94bf 100755 --- a/bin/perload +++ b/bin/perload @@ -478,9 +478,9 @@ sub q { .nr % 0 \" start at page 1 '; __END__ \" the perl compiler stops here -''' -''' From here on it's a standard manual page. -''' +.\" +.\" From here on it's a standard manual page. +.\" .TH PERLOAD 1 "June 20, 1992" .AT 3 diff --git a/dist.man b/dist.man index bfee179..5e5bfec 100644 --- a/dist.man +++ b/dist.man @@ -1,37 +1,37 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: dist.man,v $ -''' Revision 3.0.1.6 1995/05/12 11:57:53 ram -''' patch54: updated my e-mail address -''' -''' Revision 3.0.1.5 1994/10/29 15:46:03 ram -''' patch36: mentions new patlog script and ChangeLog file -''' -''' Revision 3.0.1.4 1994/05/06 13:54:17 ram -''' patch23: extended copyright notice to 1994 -''' patch23: new script kitpost -''' -''' Revision 3.0.1.3 1994/01/24 13:55:41 ram -''' patch16: documents profile and its components -''' -''' Revision 3.0.1.2 1993/11/10 17:31:03 ram -''' patch14: added mention for new confmagic.h file -''' -''' Revision 3.0.1.1 1993/08/24 12:12:00 ram -''' patch3: added entries for patnotify and patsnap -''' -''' Revision 3.0 1993/08/18 12:04:07 ram -''' Baseline for dist 3.0 netwide release. -''' -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: dist.man,v $ +.\" Revision 3.0.1.6 1995/05/12 11:57:53 ram +.\" patch54: updated my e-mail address +.\" +.\" Revision 3.0.1.5 1994/10/29 15:46:03 ram +.\" patch36: mentions new patlog script and ChangeLog file +.\" +.\" Revision 3.0.1.4 1994/05/06 13:54:17 ram +.\" patch23: extended copyright notice to 1994 +.\" patch23: new script kitpost +.\" +.\" Revision 3.0.1.3 1994/01/24 13:55:41 ram +.\" patch16: documents profile and its components +.\" +.\" Revision 3.0.1.2 1993/11/10 17:31:03 ram +.\" patch14: added mention for new confmagic.h file +.\" +.\" Revision 3.0.1.1 1993/08/24 12:12:00 ram +.\" patch3: added entries for patnotify and patsnap +.\" +.\" Revision 3.0 1993/08/18 12:04:07 ram +.\" Baseline for dist 3.0 netwide release. +.\" +.\" .de Ex \" Start of Example .sp .in +5 diff --git a/jmake/jmake.man b/jmake/jmake.man index 66b306d..3367289 100644 --- a/jmake/jmake.man +++ b/jmake/jmake.man @@ -1,28 +1,28 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: jmake.man,v $ -''' Revision 3.0.1.3 2004/08/22 09:01:55 ram -''' patch71: renamed |test as |case as the construct has its syntax -''' patch71: added |subst section to allow variable substitutions -''' -''' Revision 3.0.1.2 2004/08/21 23:19:52 ram -''' patch71: added '|shell' section to emit verbatim code in Makefile.SH -''' patch71: new '|test' to conditionally generate Makefile sections -''' -''' Revision 3.0.1.1 1995/05/12 11:57:58 ram -''' patch54: updated my e-mail address -''' -''' Revision 3.0 1993/08/18 12:04:18 ram -''' Baseline for dist 3.0 netwide release. -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: jmake.man,v $ +.\" Revision 3.0.1.3 2004/08/22 09:01:55 ram +.\" patch71: renamed |test as |case as the construct has its syntax +.\" patch71: added |subst section to allow variable substitutions +.\" +.\" Revision 3.0.1.2 2004/08/21 23:19:52 ram +.\" patch71: added '|shell' section to emit verbatim code in Makefile.SH +.\" patch71: new '|test' to conditionally generate Makefile sections +.\" +.\" Revision 3.0.1.1 1995/05/12 11:57:58 ram +.\" patch54: updated my e-mail address +.\" +.\" Revision 3.0 1993/08/18 12:04:18 ram +.\" Baseline for dist 3.0 netwide release. +.\" .TH JMAKE 1 ram .SH NAME jmake \- a generic makefile builder diff --git a/jmake/jmkmf.man b/jmake/jmkmf.man index dde89a1..c155f54 100644 --- a/jmake/jmkmf.man +++ b/jmake/jmkmf.man @@ -1,20 +1,20 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: jmkmf.man,v $ -''' Revision 3.0.1.1 1995/05/12 11:58:03 ram -''' patch54: updated my e-mail address -''' -''' Revision 3.0 1993/08/18 12:04:20 ram -''' Baseline for dist 3.0 netwide release. -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: jmkmf.man,v $ +.\" Revision 3.0.1.1 1995/05/12 11:58:03 ram +.\" patch54: updated my e-mail address +.\" +.\" Revision 3.0 1993/08/18 12:04:20 ram +.\" Baseline for dist 3.0 netwide release. +.\" .TH JMKMF 1 ram .SH NAME jmkmf \- runs jmake with the correct options diff --git a/kit/kitpost.man b/kit/kitpost.man index ec44edd..3455336 100644 --- a/kit/kitpost.man +++ b/kit/kitpost.man @@ -1,20 +1,20 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: kitpost.man,v $ -''' Revision 3.0.1.2 1995/05/12 11:58:09 ram -''' patch54: updated my e-mail address -''' -''' Revision 3.0.1.1 1994/05/06 13:55:01 ram -''' patch23: created -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: kitpost.man,v $ +.\" Revision 3.0.1.2 1995/05/12 11:58:09 ram +.\" patch54: updated my e-mail address +.\" +.\" Revision 3.0.1.1 1994/05/06 13:55:01 ram +.\" patch23: created +.\" .TH KITSEND 1 ram .SH NAME kitpost \- posts distribution kits diff --git a/kit/kitsend.man b/kit/kitsend.man index ebe5459..f8ec79e 100644 --- a/kit/kitsend.man +++ b/kit/kitsend.man @@ -1,20 +1,20 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: kitsend.man,v $ -''' Revision 3.0.1.1 1994/05/06 14:00:11 ram -''' patch23: documented new -V and -h options -''' -''' Revision 3.0 1993/08/18 12:04:26 ram -''' Baseline for dist 3.0 netwide release. -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: kitsend.man,v $ +.\" Revision 3.0.1.1 1994/05/06 14:00:11 ram +.\" patch23: documented new -V and -h options +.\" +.\" Revision 3.0 1993/08/18 12:04:26 ram +.\" Baseline for dist 3.0 netwide release. +.\" .TH KITSEND 1 ram .SH NAME kitsend \- sends distribution kits diff --git a/kit/makeSH.man b/kit/makeSH.man index 30f462a..6693794 100644 --- a/kit/makeSH.man +++ b/kit/makeSH.man @@ -1,18 +1,18 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: makeSH.man,v $ -''' Revision 3.0 1993/08/18 12:04:27 ram -''' Baseline for dist 3.0 netwide release. -''' -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: makeSH.man,v $ +.\" Revision 3.0 1993/08/18 12:04:27 ram +.\" Baseline for dist 3.0 netwide release. +.\" +.\" .TH MAKESH 1 LOCAL .SH NAME makeSH \- a .SH script maker diff --git a/kit/makedist.man b/kit/makedist.man index 5c6b09d..280b42c 100644 --- a/kit/makedist.man +++ b/kit/makedist.man @@ -1,25 +1,25 @@ .rn '' }` -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: makedist.man,v $ -''' Revision 3.0.1.2 1995/05/12 11:58:16 ram -''' patch54: updated my e-mail address -''' -''' Revision 3.0.1.1 1994/05/06 14:00:50 ram -''' patch23: now mentions kitpost and kitsend -''' -''' Revision 3.0 1993/08/18 12:04:31 ram -''' Baseline for dist 3.0 netwide release. -''' -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: makedist.man,v $ +.\" Revision 3.0.1.2 1995/05/12 11:58:16 ram +.\" patch54: updated my e-mail address +.\" +.\" Revision 3.0.1.1 1994/05/06 14:00:50 ram +.\" patch23: now mentions kitpost and kitsend +.\" +.\" Revision 3.0 1993/08/18 12:04:31 ram +.\" Baseline for dist 3.0 netwide release. +.\" +.\" .de Sh .br .ne 5 @@ -31,11 +31,11 @@ .if t .sp .5v .if n .sp .. -''' -''' Set up \*(-- to give an unbreakable dash; -''' string Tr holds user defined translation string. -''' Bell System Logo is used as a dummy character. -''' +.\" +.\" Set up \*(-- to give an unbreakable dash; +.\" string Tr holds user defined translation string. +.\" Bell System Logo is used as a dummy character. +.\" .ie n \{\ .tr \(*W-\*(Tr .ds -- \(*W- diff --git a/kit/manifake.man b/kit/manifake.man index 8c76ba7..0b79d2e 100644 --- a/kit/manifake.man +++ b/kit/manifake.man @@ -1,20 +1,20 @@ -''' $Id$ -''' -''' Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -''' -''' You may redistribute only under the terms of the Artistic Licence, -''' as specified in the README file that comes with the distribution. -''' You may reuse parts of this distribution only within the terms of -''' that same Artistic Licence; a copy of which may be found at the root -''' of the source tree for dist 4.0. -''' -''' $Log: manifake.man,v $ -''' Revision 3.0.1.1 1995/05/12 11:58:21 ram -''' patch54: updated my e-mail address -''' -''' Revision 3.0 1993/08/18 12:04:33 ram -''' Baseline for dist 3.0 netwide release. -''' +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: manifake.man,v $ +.\" Revision 3.0.1.1 1995/05/12 11:58:21 ram +.\" patch54: updated my e-mail address +.\" +.\" Revision 3.0 1993/08/18 12:04:33 ram +.\" Baseline for dist 3.0 netwide release. +.\" .TH MANIFAKE 1 ram .SH NAME manifake \- creates a MANIFEST.new out of a MANIFEST file diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH index e749330..2b176a5 100755 --- a/mcon/man/mconfig.SH +++ b/mcon/man/mconfig.SH @@ -18,88 +18,88 @@ echo "Extracting mcon/man/metaconfig.$manext (with variable substitutions)" $rm -f metaconfig.$manext $spitshell >metaconfig.$manext < macro substitution -''' -''' Revision 3.0.1.5 1993/10/16 13:51:50 ram -''' patch12: new option -M to activate ?M: lines -''' patch12: documents new ?M: lines format -''' patch12: new internal Makefile command cm_h_weed for ?M: support -''' patch12: documents usage for new confmagic.h file -''' -''' Revision 3.0.1.4 1993/09/09 11:50:35 ram -''' patch9: lots of typo fixes and abusive variable substitution problems -''' -''' Revision 3.0.1.3 1993/08/30 08:53:51 ram -''' patch8: wrongly stated that patchlevel.h should not be part of MANIFEST.new -''' -''' Revision 3.0.1.2 1993/08/24 12:13:32 ram -''' patch3: typo fixes -''' -''' Revision 3.0.1.1 1993/08/19 06:42:23 ram -''' patch1: leading config.sh searching was not aborting properly -''' -''' Revision 3.0 1993/08/18 12:10:14 ram -''' Baseline for dist 3.0 netwide release. -''' -''' +.\" @(#) Manual page for metaconfig +.\" +.\" $Id$ +.\" +.\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi +.\" +.\" You may redistribute only under the terms of the Artistic Licence, +.\" as specified in the README file that comes with the distribution. +.\" You may reuse parts of this distribution only within the terms of +.\" that same Artistic Licence; a copy of which may be found at the root +.\" of the source tree for dist 4.0. +.\" +.\" $Log: mconfig.SH,v $ +.\" Revision 3.0.1.17 1997/02/28 16:29:31 ram +.\" patch61: documents the runnning environment and the src.U unit +.\" patch61: added warnings for $_a and $_o, as well as "startsh" +.\" +.\" Revision 3.0.1.16 1995/09/25 09:17:48 ram +.\" patch59: documented new ?Y: directive +.\" patch59: fixed my e-mail address +.\" +.\" Revision 3.0.1.15 1995/07/25 14:18:24 ram +.\" patch56: added extra nroff escapes at line heads to keep leading dots +.\" patch56: documented new -G option +.\" patch56: extended description of the Csym.U unit +.\" patch56: now mentions what a compile-link test line should look like +.\" +.\" Revision 3.0.1.14 1995/05/12 12:25:02 ram +.\" patch54: documented new -K switch for knowledgeable users +.\" +.\" Revision 3.0.1.13 1995/01/30 14:46:39 ram +.\" patch49: documented new special units Prefixit.U and Prefixup.U +.\" +.\" Revision 3.0.1.12 1995/01/11 15:39:16 ram +.\" patch45: documents new -O option and new Getfile escape supports +.\" patch45: documents the & escape in Myread and the new cc symbol lookup +.\" +.\" Revision 3.0.1.11 1994/10/29 16:32:38 ram +.\" patch36: added nroff protection for lines beginning with '.' +.\" patch36: documents new ?F: line for file declarations +.\" patch36: added example showing how ./loc can be used +.\" +.\" Revision 3.0.1.10 1994/08/29 16:33:40 ram +.\" patch32: documented new Typedef.U unit for typedef lookup +.\" +.\" Revision 3.0.1.9 1994/06/20 07:10:14 ram +.\" patch30: added -L option for easier unit testing +.\" patch30: new -D and -U options supported by Configure +.\" +.\" Revision 3.0.1.8 1994/05/13 15:29:16 ram +.\" patch27: now understands macro definitions in ?H: lines +.\" +.\" Revision 3.0.1.7 1994/05/06 15:19:25 ram +.\" patch23: documented the new 'p' option in Getfile.U +.\" +.\" Revision 3.0.1.6 1994/01/24 14:19:47 ram +.\" patch16: symbols defined in a unit can be tagged "internal use only" +.\" patch16: documents new MailList.U special unit +.\" patch16: new general <\$variable> macro substitution +.\" +.\" Revision 3.0.1.5 1993/10/16 13:51:50 ram +.\" patch12: new option -M to activate ?M: lines +.\" patch12: documents new ?M: lines format +.\" patch12: new internal Makefile command cm_h_weed for ?M: support +.\" patch12: documents usage for new confmagic.h file +.\" +.\" Revision 3.0.1.4 1993/09/09 11:50:35 ram +.\" patch9: lots of typo fixes and abusive variable substitution problems +.\" +.\" Revision 3.0.1.3 1993/08/30 08:53:51 ram +.\" patch8: wrongly stated that patchlevel.h should not be part of MANIFEST.new +.\" +.\" Revision 3.0.1.2 1993/08/24 12:13:32 ram +.\" patch3: typo fixes +.\" +.\" Revision 3.0.1.1 1993/08/19 06:42:23 ram +.\" patch1: leading config.sh searching was not aborting properly +.\" +.\" Revision 3.0 1993/08/18 12:10:14 ram +.\" Baseline for dist 3.0 netwide release. +.\" +.\" .de Ex \" Start of Example .sp .in +5 @@ -459,9 +459,9 @@ UU/* config.sh config.h .Ef -''' -''' O p t i o n s -''' +.\" +.\" O p t i o n s +.\" .SH OPTIONS The following options are recognized by \fImetaconfig\fR: .TP 15 @@ -541,14 +541,14 @@ The \fIfile\fR can contain blank lines, comment lines introduced with '#', and lines containing a single symbol. If this option is not supplied, any \fI$exclusions_file\fR variable in \fI.package\fR is honored instead. -''' -''' T u t o r i a l -''' +.\" +.\" T u t o r i a l +.\" .SH TUTORIAL This (long) section is an introduction to \fImetaconfig\fR, in which we will learn all the basics. If you already know how to use \fImetaconfig\fR, you may safely skip to the next section. -''' +.\" .SS Overview .PP Usually when you want to get some source package to compile on a given @@ -601,7 +601,7 @@ unit being responsible for defining a small number of shell and/or C symbols. Units are assembled together at the final stage, honoring the dependency graph (one unit may need the result of several other units which are then placed before in the script). -''' +.\" .SS Symbols .PP Symbols are the most important thing in the \fImetaconfig\fR world. They @@ -626,7 +626,7 @@ paragraph could sound. In a C file, you need to include the Configure-produced \fIconfig.h\fR file, and you must wrap your shell script or Makefile in a .SH file and you may reference the shell symbol only in the variable substitution part of that .SH file. More on this later. -''' +.\" .SS Source Files .PP Symbols may only appear in a limited set of source files, because @@ -644,7 +644,7 @@ substitutions apply. Actually, \fIconfig.h\fR is produced by running the \fImetaconfig\fR-produced \fIconfig_h.SH\fR file, again using variable substitution. So we're going to look at that a little more closely since this is the heart of the whole \fIconfiguration\fR scheme... -''' +.\" .SS Variable Substitution .PP There is shell construct called \fIhere document\fR which enables a @@ -685,7 +685,7 @@ echo \$\&tar .Ef The first here document has its content interpreted whilst the second one is output as-is. Both are useful in a .SH script, as we are about to see. -''' +.\" .SS Using .SH Scripts .PP A .SH script is usually produced by running the \fIMakeSH\fR script other @@ -824,7 +824,7 @@ stored as a 64 bits quantity, \fIconfig.sh\fR will set \fIintsize\fR to On this machine, the int type is 8 bytes .Ef which is correct. Congratulations! We have just configured a shell script!! -''' +.\" .SS Producing config.h .PP We can now have a look at the way \fIconfig.h\fR is produced out of @@ -978,7 +978,7 @@ configured C code, since \fImetaconfig\fR will know that you need those symbols and will generate a suitable \fIconfig_h.SH\fR file as well as all the necessary code in \fIConfigure\fR to compute a proper value for them (by assigning values to associated shell variables). -''' +.\" .SS Running Metaconfig .PP Let's focus on the \fImetaconfig\fR program for a while to understand how @@ -1039,7 +1039,7 @@ required are removed and a second Makefile is generated. This time, we know about all the units and their respective orders, optional units having been removed and default values computed for their shell symbols. The \fIConfigure\fR script can then be generated, along with \fIconfig_h.SH\fR. We're done. -''' +.\" .SS Conventions .PP Proper conventions needs to be followed to make the whole process sound. @@ -1069,7 +1069,7 @@ answer in \fI\$dflt\fR and places the user answer in \fI\$ans\fR. This is not documented in this manual page: you have to go and look at the unit itself to understand which variables are used and how the unit is to be used. -''' +.\" .SS Using The Glossary .PP The Glossary file is automatically produced by the \fImakegloss\fR script, @@ -1084,7 +1084,7 @@ about \fImetaconfig\fR to do so quickly and efficiently. However, never forget to properly document your work in the ?S: and ?C: lines, or other people will not be able to reuse it. Remember about the time where you had only the Glossary and this manual page to get started. -''' +.\" .SS Conclusion .PP Now that you know the \fImetaconfig\fR basics, you should read the @@ -1095,7 +1095,7 @@ commands you are allowed to use. .SH REFERENCE This section documents the internals of \fImetaconfig\fR, basically the unit syntax, the special units you should know about and the hint files. -''' +.\" .SS General Unit Syntax .PP A metaconfig unit is divided into two distinct parts. The header section @@ -1303,7 +1303,7 @@ hints that can be used. ?INIT:\fIinitialization code\fR The initialization code specified by this line will be loaded at the top of the \fIConfigure\fR script provided the unit is needed. -''' +.\" .SS C Symbol Aliasing .PP Sometimes it is not possible to rely on \fImetaconfig\fR's own default @@ -1383,7 +1383,7 @@ It simply tries to compile a sample C program using the \fIconst\fR keyword. If it can, then it will define \fI\$\&d_const\fR via the \fI\$\&setvar\fR fonction (defined by the \fISetvar.U\fR unit). See the paragraph about special units for more details. -''' +.\" .SS Make Commands .PP On the ?MAKE: command line, you may write a shell command to be executed as-is @@ -1448,7 +1448,7 @@ As a side note, \fImetaconfig\fR generates a \fI-cond\fR command internally to deal with conditional dependencies. You should not use it by yourself, but you will see it if scanning the generated \fIMakefile\fR in the \fI.MT\fR directory. -''' +.\" .SS Hardwired Macros .PP The following macros are recognized by the \fIwipe\fR command and subsituted @@ -1491,7 +1491,7 @@ which is replaced at Configure-generation time by the value of \fIvariable\fR taken from your \fI.package\fR file. Eventually, the old hardwired macro format will disappear, and <\$baserev> will replace in all the supplied units. -''' +.\" .SS Special Units .PP The following special units are used to factorize code and provide higher @@ -1781,7 +1781,7 @@ This unit produces the \fIwhoa\fR script, which emits a warning when the its old previous value held in \fI\$was\fR. Upon return, \fI\$td\fR and \fI\$tu\fR hold the proper value to \fIdefine\fR or \fIundef\fR the variable. See examples in \fIInlibc.U\fR. -''' +.\" .SS Builtin Pre-processor .PP Each unit to be included in \fIConfigure\fR is ran through a built-in @@ -1881,7 +1881,7 @@ done .Ef and have an extra loop trying two successive values for the \fIs_timezone\fR variable, but only if needed. -''' +.\" .SS Obsolete Symbols .PP Obsolete symbols are preserved to ease the transition with older @@ -1895,7 +1895,7 @@ The lifetime for obsolete symbols is one full revision, i.e. they will be removed when the next base revision is issued (patch upgrades do not count of course). Therefore, it is wise to translate your sources and start using the new symbols as soon as possible. -''' +.\" .SS Configure Hints .PP It may happen that the internal configuration logic makes the wrong choices. @@ -1945,7 +1945,7 @@ Note that you don't have to provide \fIall\fR the hints known by possible choice. The heuristic tests ran to compute the possible hint candidates are flaky. If you have new values or different tests, please send them to me... -''' +.\" .SS Overriding Choices .PP If you create a \fIconfig.over\fR file in the top level directory, @@ -1956,7 +1956,7 @@ you a chance to patch the values stored in there. This is distinct from the hints approach in that it is a local file, which the user is free to create for his own usage. You should not provide such a file yourself, but let the user know about this possibility. -''' +.\" .SS Configure Options .PP The \fIConfigure\fR script may be called with some options specified on the @@ -2028,7 +2028,7 @@ possible to use '\fB-U\fI symbol\fR' which will set \fIsymbol\fR to 'undef'. Print the version number of the \fImetaconfig\fR that generated this .I Configure script and exit. -''' +.\" .SS Running Environment Upon starting, \fIConfigure\fR creates a local \fIUU\fR directory and runs from there. The directory is removed when Configure ends, but this means @@ -2057,7 +2057,7 @@ When running \fIConfigure\fR remotely, the .SH files are extracted in the build directory, not in the source tree. However, it requires some kind of a \fImake\fR support to be able to compile things in a build directory whilst the sources lie elsewhere. -''' +.\" .SS Using Magic Redefinitions .PP By making use of the \fB\-M\fR switch, some magic remappings may take place @@ -2077,7 +2077,7 @@ on \fImemcpy()\fR if no \fIbcopy()\fR is available locally, or transform bother about the \fIHAS_VFORK\fR symbol. .PP This configuration magic is documented in the Glossary file. -''' +.\" .SS Unit Templates .PP There is a set of unit templates in the \fImetaconfig\fR source directory, diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index 8910b88..e2c7f4a 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -18,54 +18,54 @@ echo "Extracting mcon/man/metalint.$manext (with variable substitutions)" $rm -f metalint.$manext $spitshell >metalint.$manext <metaxref.$manext < Date: Mon, 21 May 2018 11:10:31 +0200 Subject: Removed obsolete parts. Fixes issue #15. --- README | 51 ++++----------------------------------------------- 1 file changed, 4 insertions(+), 47 deletions(-) diff --git a/README b/README index 86f250a..8d71686 100644 --- a/README +++ b/README @@ -1,10 +1,10 @@ dist 4.0 - ** Alpha version ** Copyright (c) 1988, Larry Wall Copyright (c) 1990-1992, Harlan Stenn Copyright (c) 1991-1997, Raphael Manfredi Copyright (c) 2004-2006, Raphael Manfredi + Copyright (c) 2007+ Many other contributors ------------------------------------------------------------------------ This program is free software; you can redistribute it and/or modify @@ -18,15 +18,7 @@ ------------------------------------------------------------------------ This version of dist requires you to have at least perl 4.0 PL36. -It has also been ported to work with perl 5.0 PL0, provided you have -at least integrated patches 0a-0h, issued by Andy Dougherty and made -available at the following ftp sites: - - ftp.demon.co.uk:/pub/perl/db/perl5.000-p0a-p0h.tar.gz - ftp.funet.fi:/pub/languages/perl/ports/perl5/perl5.000-p0a-p0h.tar.gz - -Please read all the directions below before you proceed any further, and -then follow them carefully. +It has also been ported to work with modern perl 5. After you have unpacked your kit, you should have all the files listed in MANIFEST. @@ -48,31 +40,6 @@ use any of those, however, the directory containing your package (not this package) must be initialized by putting a .package file into it. This can be done by running packinit in that directory. -There is a mailing list hosted in Japan and set up by Shigeya Suzuki -, for discussion about the dist package as a -whole. It's a good place to ask questions (or answer them) and to -send your patches. I will post official patches to the net, as well -as to the dist-users list. - -To send a mail to the list, address it to . -To subscribe, send a mail to . If you don't -know how to use majordomo, the syntax of the subscribe command is: - - subscribe dist-users [address] - -where the address part is optional. You may unsubscribe automatically -at any time by sending: - - unsubscribe dist-users - -If you have a problem with this version of dist, it is recommended that -you subscribe to the list, then send a description of your problem to it. -If you send mail to me personally, I may not be able to answer in a -timely fashion. - -This mailing list has low traffic (a few articles per week, typically), -and it is expected to remain so, with a high signal/noise ratio. - Notes: If you are running on a system with <= 14 char filenames, don't @@ -119,20 +86,10 @@ clean up everything and let you re-distribute this kit, without carrying useless files. You should keep this distribution intact, so that future patches will be applyable. -7) I have an automatic patch sender. Send me the following mail: - - Subject: Command - @SH mailhelp PATH - -and you'll get instructions (PATH stands for YOUR e-mail address, either -in INTERNET or in bang notation). I would recommend you to get all the -issued patches before you start making some modifications on this -package. - -8) If you wish to deinstall the package, you may run "make deinstall". +7) If you wish to deinstall the package, you may run "make deinstall". A separate "make deinstall.man" will remove the manual pages. Be sure the makefiles are correctly set before running any deinstall target. On USG systems, some executable have a chance to remain despite the deinstall (text file busy...). - Raphael Manfredi + Raphael Manfredi -- cgit v1.2.3 From 7c4c3dd291c741e2a42c78efd77ffbd3a1c9c1c1 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Tue, 5 Jun 2018 14:28:56 +0200 Subject: Added Specific.U as a hook for project-specific code. After generating config.sh, this is a place where optional generation can happen, before going on with the .SH file extractions and dependency computations. Typically, this can be used to generate a revision.h file. --- Configure | 47 ++++++++++++++++++++++++++++++++--------------- MANIFEST | 2 ++ U/Specific.U | 33 +++++++++++++++++++++++++++++++++ mcon/U/Finish.U | 2 +- mcon/U/Specific.U | 26 ++++++++++++++++++++++++++ mcon/man/mconfig.SH | 19 +++++++++++++++++++ 6 files changed, 113 insertions(+), 16 deletions(-) create mode 100644 U/Specific.U create mode 100644 mcon/U/Specific.U diff --git a/Configure b/Configure index 40a347d..ec3f64d 100755 --- a/Configure +++ b/Configure @@ -16,9 +16,9 @@ # The dist package (which contains metaconfig) is available via SVN: # svn co https://svn.code.sf.net/p/dist/code/trunk/dist -# $Id: Head.U 167 2013-05-08 17:58:00Z rmanfredi $ +# $Id$ # -# Generated on Sat Nov 14 16:05:58 CET 2015 [metaconfig 3.5-197] +# Generated on Tue Jun 5 14:21:57 CEST 2018 [metaconfig 3.5-239] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-239." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -855,10 +856,14 @@ esac : Find the path to the source tree case "$src" in '') case "$0" in - */*) - src=`echo $0 | sed -e 's%/[^/][^/]*$%%'` - ;; - *) src='.';; + */*) src=`echo $0 | sed -e 's%/[^/][^/]*$%%'` + case "$src" in + /*) ;; + .) ;; + *) src=`cd ../$src && pwd` ;; + esac + ;; + *) src='.';; esac;; esac case "$src" in @@ -1674,7 +1679,7 @@ case "$lns" in ;; *) issymlink='' ;; esac - fi + fi fi if $test "X$issymlink" = X; then if $test -L sym 2>/dev/null; then @@ -2270,12 +2275,15 @@ esac : who configured the system cf_time=`LC_ALL=C; LANGUAGE=C; export LC_ALL; export LANGUAGE; $date 2>&1` -cf_by=`(logname) 2>/dev/null` case "$cf_by" in "") - cf_by=`(whoami) 2>/dev/null` + cf_by=`(logname) 2>/dev/null` case "$cf_by" in - "") cf_by=unknown ;; + "") + cf_by=`(whoami) 2>/dev/null` + case "$cf_by" in + "") cf_by=unknown ;; + esac ;; esac ;; esac @@ -2352,10 +2360,10 @@ cat >filexp <>config.sh diff --git a/MANIFEST b/MANIFEST index f15caea..8b7a670 100644 --- a/MANIFEST +++ b/MANIFEST @@ -8,6 +8,7 @@ MANIFEST This list of files Makefile.SH A makefile to run subsidiary makefiles README Basic instructions Wishlist Features I would like to add +U/Specific.U Specific code for dist before .SH extraction bin/ Some binary tools bin/Jmakefile Generic makefile description for bin bin/Makefile.SH Jmake-generated configured makefile @@ -127,6 +128,7 @@ mcon/U/Rcs.U Some stupid redefinitions to keep RCS happy mcon/U/Sendfile64.U Is sendfile() working with the largefile flags? mcon/U/Setvar.U Set a variable with some sanity checks mcon/U/Signal.U Utilities for sig_name.U +mcon/U/Specific.U Hook for project-specific code before .SH extraction mcon/U/Tr.U Builds a tr script to handle lower and upper classes mcon/U/Trylink.U Compiles and links a test program mcon/U/Typedef.U Defines a typedef lookup function diff --git a/U/Specific.U b/U/Specific.U new file mode 100644 index 0000000..30babf8 --- /dev/null +++ b/U/Specific.U @@ -0,0 +1,33 @@ +?RCS: +?RCS: Copyright (c) 2018, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?X: +?X: This unit is intended to be a project-specific hook. +?X: By default, it is therefore empty, meant to be copied to your private +?X: unit directory (U) and seasoned to taste. +?X: +?X: If you need specific code generation to happen once the configuration +?X: is finished and config.sh was generated, but before the extraction of +?X: the .SH files begins, then this is the place to put these special +?X: code that the .SH files will require to run properly. +?X: +?X: When this unit triggers, Configure is back to the top directory. +?X: +?MAKE:Specific: Config_sh +?MAKE: -pick add $@ %< +?T:file +?X: +?X: Keep the above ?MAKE: lines and then append your specific code here. +?X: +: project-specific code +file=revision.h +echo " " +echo "Generating $file..." >&4 +bin/svn-revision . $file + diff --git a/mcon/U/Finish.U b/mcon/U/Finish.U index cf5a364..51039c4 100644 --- a/mcon/U/Finish.U +++ b/mcon/U/Finish.U @@ -35,7 +35,7 @@ ?X: SH files, which among other things produce config.h and (usually) Makefile. ?X: It offers to do a make depend if the Makefile contains that target. ?X: -?MAKE:Finish: Chk_MANI Extract Myread Oldsym Magic_h cat rm contains \ +?MAKE:Finish: Chk_MANI Extract Specific Myread Oldsym Magic_h cat rm contains \ test package make ?MAKE: -pick add $@ %< ?F:!config.sh diff --git a/mcon/U/Specific.U b/mcon/U/Specific.U new file mode 100644 index 0000000..feb189b --- /dev/null +++ b/mcon/U/Specific.U @@ -0,0 +1,26 @@ +?RCS: +?RCS: Copyright (c) 2018, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?X: +?X: This unit is intended to be a project-specific hook. +?X: By default, it is therefore empty, meant to be copied to your private +?X: unit directory (U) and seasoned to taste. +?X: +?X: If you need specific code generation to happen once the configuration +?X: is finished and config.sh was generated, but before the extraction of +?X: the .SH files begins, then this is the place to put these special +?X: code that the .SH files will require to run properly. +?X: +?X: When this unit triggers, Configure is back to the top directory. +?X: +?MAKE:Specific: Config_sh +?MAKE: -pick add $@ %< +?X: +?X: Keep the above ?MAKE: lines and then append your specific code here. +?X: diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH index 2b176a5..9a33ceb 100755 --- a/mcon/man/mconfig.SH +++ b/mcon/man/mconfig.SH @@ -1742,6 +1742,25 @@ before prompting via \fIgetfile\fR for instance. If the prefix does not make use of ~name expanstion, then the above will be a no-op on the \fI$dflt\fR variable, naturally. .TP +Specific.U +This unit is empty by default. It is meant as a project-specific hook +to have shell code executed by \fIConfigure\fR after \fIconfig.sh\fR was +generated but before the extraction of .SH files. +.sp +Copy the unit to your project's \fIU/\fR directory and customize it. +.sp +Here is what the \fIdist\fR project uses it for (showing only the unit's code, +not the full unit here): +.Ex +: project-specific code +file=revision.h +echo " " +echo "Generating \$file..." >&4 +bin/svn-revision . \$file +.Ef +That shell code is executed when \fIConfigure\fR is back to the top directory +of the source tree. +.TP Typedef.U This unit produces the \fI\$typedef\fR shell variable, used internally by \fIConfigure\fR to check whether a typedef exists or not. A typical -- cgit v1.2.3 From ef5ee336fc90ba6ea4eb3bcadff4bc46d820ea26 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Tue, 5 Jun 2018 15:03:50 +0200 Subject: Added more "noise" to the .gitignore file. --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 103f8de..9908014 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,9 @@ .config/ +.package *.bak *.1 Makefile +Wanted bin/manicheck bin/manilist bin/packinit -- cgit v1.2.3 From 8e1f96af6f9d7f755ef551f6b422d856be37e41a Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Tue, 5 Jun 2018 15:23:33 +0200 Subject: Use new project public location, along with change from SVN to git. --- Configure | 6 +++--- mcon/U/Head.U | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Configure b/Configure index ec3f64d..bb80a47 100755 --- a/Configure +++ b/Configure @@ -18,7 +18,7 @@ # $Id$ # -# Generated on Tue Jun 5 14:21:57 CEST 2018 [metaconfig 3.5-239] +# Generated on Tue Jun 5 15:23:15 CEST 2018 [metaconfig 3.5-241] cat >c1$$ <&2 + -V) echo "$me generated by metaconfig 3.5-241." >&2 exit 0;; --) break;; -*) echo "$me: unknown option $1" >&2; shift; error=true;; @@ -4630,7 +4630,7 @@ EOT : project-specific code file=revision.h echo " " -echo "Generating $file..." +echo "Generating $file..." >&4 bin/svn-revision . $file : add special variables diff --git a/mcon/U/Head.U b/mcon/U/Head.U index 933e489..0b8a98e 100644 --- a/mcon/U/Head.U +++ b/mcon/U/Head.U @@ -77,8 +77,8 @@ ?X: # Note: this Configure script was generated automatically. Rather than # working with this copy of Configure, you may wish to get metaconfig. -# The dist package (which contains metaconfig) is available via SVN: -# svn co https://svn.code.sf.net/p/dist/code/trunk/dist +# The dist package (which contains metaconfig) is available via git: +# git clone git@github.com:rmanfredi/dist.git ?X: ?X: NOTA BENE: ?X: If you develop you own version of metaconfig based on this work, -- cgit v1.2.3 From 9853b5011e23cc50e2e422b18a8c13eebfa7b7e7 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Tue, 5 Jun 2018 15:25:04 +0200 Subject: Regenerated Configure. --- Configure | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Configure b/Configure index bb80a47..9117a0f 100755 --- a/Configure +++ b/Configure @@ -13,12 +13,12 @@ # # Note: this Configure script was generated automatically. Rather than # working with this copy of Configure, you may wish to get metaconfig. -# The dist package (which contains metaconfig) is available via SVN: -# svn co https://svn.code.sf.net/p/dist/code/trunk/dist +# The dist package (which contains metaconfig) is available via git: +# git clone git@github.com:rmanfredi/dist.git # $Id$ # -# Generated on Tue Jun 5 15:23:15 CEST 2018 [metaconfig 3.5-241] +# Generated on Tue Jun 5 15:24:34 CEST 2018 [metaconfig 3.5-241] cat >c1$$ < Date: Sun, 18 Nov 2018 15:19:25 +0100 Subject: Added test for memrchr(). --- MANIFEST | 1 + mcon/U/d_memrchr.U | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 mcon/U/d_memrchr.U diff --git a/MANIFEST b/MANIFEST index 8b7a670..d4ea4f7 100644 --- a/MANIFEST +++ b/MANIFEST @@ -311,6 +311,7 @@ mcon/U/d_memcmp.U Do we have memcmp()? mcon/U/d_memcpy.U Do we have memcpy()? mcon/U/d_memmove.U Do we have memmove()? mcon/U/d_mempcpy.U Do we have mempcpy()? +mcon/U/d_memrchr.U Do we have memrchr()? mcon/U/d_memset.U Do we have memset()? mcon/U/d_mkdir.U Do we have mkdir()? mcon/U/d_mkfifo.U Do we have mkfifo()? diff --git a/mcon/U/d_memrchr.U b/mcon/U/d_memrchr.U new file mode 100644 index 0000000..c7b1c01 --- /dev/null +++ b/mcon/U/d_memrchr.U @@ -0,0 +1,40 @@ +?RCS: +?RCS: Copyright (c) 2018 Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_memrchr: Trylink cat +?MAKE: -pick add $@ %< +?S:d_memrchr: +?S: This variable conditionally defines the HAS_MEMRCHR symbol, which +?S: indicates to the C program that the memrchr() routine is available +?S: to scan a block of memory backwards for a character. +?S:. +?C:HAS_MEMRCHR: +?C: This symbol, if defined, indicates that the memrchr routine is available +?C: to scan a block of memory backwards for a character. +?C: If undefined, roll your own. +?C:. +?H:#$d_memrchr HAS_MEMRCHR /**/ +?H:. +?LINT:set d_memrchr +: see if memrchr exists +$cat >try.c < +int main(void) +{ + static char s[] = "xxx"; + static size_t n = sizeof(s); + void *p; + p = memrchr(s, 'x', n); + return p ? 0 : 1; +} +EOC +cyn=memrchr +set d_memrchr +eval $trylink + -- cgit v1.2.3 From 3e3a5f35940c277f3d82904be28de432b775be54 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Tue, 20 Nov 2018 15:10:06 +0100 Subject: Removed d_fast_assert.U. This is a private unit from gtk-gnutella that should not have been made available to metaconfig as it is not of general purpose. --- MANIFEST | 1 - mcon/U/d_fast_assert.U | 85 -------------------------------------------------- 2 files changed, 86 deletions(-) delete mode 100644 mcon/U/d_fast_assert.U diff --git a/MANIFEST b/MANIFEST index d4ea4f7..b04808d 100644 --- a/MANIFEST +++ b/MANIFEST @@ -223,7 +223,6 @@ mcon/U/d_eofpipe.U Will EOF be seen on closed pipes? mcon/U/d_epoll.U Can we use epoll_xxx() routines? mcon/U/d_etext_symbol.U Whether linker defines the "etext" symbol mcon/U/d_euc2jis.U Do we have euc2jis()? -mcon/U/d_fast_assert.U Can we use fast assertions? mcon/U/d_fchdir.U Do we have fchdir()? mcon/U/d_fchmod.U Do we have fchmod()? mcon/U/d_fchown.U Do we have fchown()? diff --git a/mcon/U/d_fast_assert.U b/mcon/U/d_fast_assert.U deleted file mode 100644 index dba5132..0000000 --- a/mcon/U/d_fast_assert.U +++ /dev/null @@ -1,85 +0,0 @@ -?RCS: $Id$ -?RCS: -?RCS: Copyright (c) 2006, Christian Biere -?RCS: -?RCS: You may redistribute only under the terms of the Artistic License, -?RCS: as specified in the README file that comes with the distribution. -?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic License; a copy of which may be found at the root -?RCS: of the source tree for dist 4.0. -?RCS: -?MAKE:d_fast_assert: Myread Setvar cat gccversion spackage \ - sed +ccflags +cc +ldflags +optimize -?MAKE: -pick add $@ %< -?S:d_fast_assert: -?S: This variable conditionally defines FAST_ASSERTIONS. -?S:. -?C:FAST_ASSERTIONS: -?C: This symbol, when defined, indicates that the program should make -?C: use of its own asserting and failure reporting code, instead of -?C: the one from GLib. -?C:. -?H:#$d_fast_assert FAST_ASSERTIONS /**/ -?H:. -?F:!try.c !try -?LINT:set d_fast_assert -?LINT:change ccflags -: determine whether to enable fast assertions -echo " " -case "$d_fast_assert" in -"$undef") - dflt=n;; -*) - dflt=y;; -esac -$cat <try.c <<'EOC' -int main() -{ - return 0; -} -EOC - if $cc $ccflags -momit-leaf-frame-pointer $ldflags -o try try.c >/dev/null 2>&1 - then - case "$ccflags $optimize" in - *-momit-leaf-frame-pointer*) ;; - *-O0*) ;; - *-O*) - ccflags="-momit-leaf-frame-pointer $ccflags" - echo "Added -momit-leaf-frame-pointer to the cc flags." >&4 - ;; - esac - else - case "$ccflags" in - *-momit-leaf-frame-pointer*) - echo "Stripping -momit-leaf-frame-pointer from cc flags." >&4 - ccflags=`echo $ccflags | $sed 's/ *-momit-leaf-frame-pointer//'` - ;; - esac - fi - ;; - esac -;; -esac - -- cgit v1.2.3 From 95f048e9762e73782a47c73f27f4de4500bf5051 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Mon, 16 Mar 2020 17:08:27 +0100 Subject: Was missing a few $cat uses. --- mcon/U/Checkcc.U | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mcon/U/Checkcc.U b/mcon/U/Checkcc.U index 3cae05c..ce0dc62 100644 --- a/mcon/U/Checkcc.U +++ b/mcon/U/Checkcc.U @@ -37,10 +37,10 @@ ?INIT:ccname='' ?INIT:ccversion='' : generate the trygcc script for later perusal -cat <trygcc +$cat <trygcc $startsh EOS -cat <<'EOSC' >>trygcc +$cat <<'EOSC' >>trygcc case "$cc" in '') ;; *) $rm -f try try.* @@ -100,10 +100,10 @@ esac EOSC : generate the checkcc script for later perusal -cat <checkcc +$cat <checkcc $startsh EOS -cat <<'EOSC' >>checkcc +$cat <<'EOSC' >>checkcc case "$cc" in '') ;; *) $rm -f try try.* -- cgit v1.2.3 From 2f64ea88c70b412b1543e36e5f7421c48bfd464e Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Mon, 16 Mar 2020 17:11:08 +0100 Subject: Added space to be consistent. --- mcon/U/Trylink.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/Trylink.U b/mcon/U/Trylink.U index d45ffe2..4ed9128 100644 --- a/mcon/U/Trylink.U +++ b/mcon/U/Trylink.U @@ -74,7 +74,7 @@ case "$cyn" in "") echo "--- $var ---" >> "$file";; *) echo " "; $echo $n "Checking $msg...$c" >&4; - echo "--- $var --- ($msg)" >>"$file" + echo "--- $var --- ($msg)" >> "$file" ;; esac; $cat try.c >> "$file"; -- cgit v1.2.3 From 15e25d59057b78f00042640defd1f8c76b8d4d06 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Mon, 16 Mar 2020 17:23:24 +0100 Subject: metalint: warn if several units claim to export the same file. --- mcon/man/mlint.SH | 5 +++++ mcon/pl/lint.pl | 14 +++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index e2c7f4a..58dc389 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -265,6 +265,11 @@ Private UU files (i.e. files like the \fImyread\fR script created for later perusal by \fIConfigure\fR) may only be created in special units. Exceptions allowed if the ?F: line is preceded by a proper ?LINT: hint. .TP +"(?F) file 'xxx' already exported by yyy.U." +The listed file 'xxx' is already reported exported (listed likewise) in +the other unit yyy.U and is conflicting. An exported file is a generated +file above the UU directory. +.TP "(?T) temporary symbol '\$xxx' multiply declared." Self explanatory. .TP diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index 0120c51..3f212af 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -78,6 +78,7 @@ sub init_extraction { %filetmp = (); # Local temporary files in ?F: directives %filesetin = (); # Lists units defining a temporary file %filecreated = (); # Records files created in this unit + %filedefined = (); # Records units that export a given file %prodfile = (); # Unit where a given file is said to be created %defseen = (); # Symbol defintions claimed %lintset = (); # Symbols declared set by a ?LINT: line @@ -622,7 +623,17 @@ sub p_file { } $prodfile{$file} .= "$unit " if $fileseen{$file} == 1; ($uufile = $file) =~ s|^\./(\S+)$|$1|; - next if $file eq $uufile; # Don't care about non-UU files + if ($file eq $uufile) { + # This is a non-UU files created and not a temporary file + # It is meant to be exported by Configure + if (exists $filedefined{$file}) { + my $other = $filedefined{$file}; + warn "$where: file '$file' already exported by $other.U.\n"; + } else { + $filedefined{$file} = $unit; + } + next; + } unless ($is_special || $lintcreated{$uufile}) { warn "$where: UU file '$uufile' in non-special unit ignored.\n"; delete $lintcreated{$uufile}; # Detect spurious LINT @@ -1308,6 +1319,7 @@ sub sanity_checks { undef %shspecial; undef %shvisible; undef %filemaster; + undef %filedefined; # Spot multiply defined C symbols foreach $sym (keys %cmaster) { -- cgit v1.2.3 From 3a771ebdb5e31d41b611d176f65fc1205c391f43 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Mon, 16 Mar 2020 17:24:17 +0100 Subject: Mark that this unit exports the config.sh file. --- mcon/U/Config_sh.U | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/U/Config_sh.U b/mcon/U/Config_sh.U index bb47b7b..1b3b0c6 100644 --- a/mcon/U/Config_sh.U +++ b/mcon/U/Config_sh.U @@ -32,7 +32,7 @@ ?MAKE: -pick add.Config_sh $@ %< ?MAKE: -pick add $@ ./Obsol_sh ?MAKE: -pick close.Config_sh $@ %< -?F:!config.over !config.arch +?F:!config.over !config.arch config.sh ?T:file sfile xsed ?LINT:unclosed EOT : back to where it started -- cgit v1.2.3 From f0b8d8aca8989710c49512ec0457539c8460f43b Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Mon, 16 Mar 2020 17:13:12 +0100 Subject: metalint: warn if defining a UU-file already claimed. --- mcon/man/mlint.SH | 4 ++++ mcon/pl/lint.pl | 9 +++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index 58dc389..c46ded2 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -270,6 +270,10 @@ The listed file 'xxx' is already reported exported (listed likewise) in the other unit yyy.U and is conflicting. An exported file is a generated file above the UU directory. .TP +"(?F) UU file 'xxx' already created by yyy.U." +The listed file 'xxx' is already created in the UU directory by the other +unit yyy.U. A created file is listed as ./xxx on the ?F: line. +.TP "(?T) temporary symbol '\$xxx' multiply declared." Self explanatory. .TP diff --git a/mcon/pl/lint.pl b/mcon/pl/lint.pl index 3f212af..e73f0fd 100644 --- a/mcon/pl/lint.pl +++ b/mcon/pl/lint.pl @@ -640,8 +640,13 @@ sub p_file { next; } delete $lintcreated{$uufile} if !$is_special; # Detect spurious LINT - $filemaster{$uufile} = $unit unless defined $filemaster{$uufile}; - $filecreated{$uufile} = 'a'; # Will be automagically incremented + if (exists $filemaster{$uufile}) { + my $other = $filemaster{$uufile}; + warn "$where: UU file '$uufile' already created by $other.U.\n"; + } else { + $filemaster{$uufile} = $unit; + $filecreated{$uufile} = 'a'; # Will be automagically incremented + } } } -- cgit v1.2.3 From 41979518039d93f7ce33c9ed1b3d16620a7bd61a Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Mon, 16 Mar 2020 18:48:47 +0100 Subject: Avoid compiler warning during void-support test. --- mcon/U/voidflags.U | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mcon/U/voidflags.U b/mcon/U/voidflags.U index 0e0f49c..5db1db9 100644 --- a/mcon/U/voidflags.U +++ b/mcon/U/voidflags.U @@ -111,6 +111,8 @@ sub() { hue = buf; if (doit()) iptr = hue; +?X: Avoid "variable set but not used" compilation warning + (void) iptr; #endif doit(); } -- cgit v1.2.3 From c15168c17871134abedd45d1690708834ad6a3b6 Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Mon, 16 Mar 2020 19:32:07 +0100 Subject: Check whether bfd_get_section_vma() takes 1 or 2 arguments. --- MANIFEST | 1 + mcon/U/d_bfd_section_vma.U | 80 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 mcon/U/d_bfd_section_vma.U diff --git a/MANIFEST b/MANIFEST index b04808d..35aaa0b 100644 --- a/MANIFEST +++ b/MANIFEST @@ -172,6 +172,7 @@ mcon/U/d_backtrace.U Do we have backtrace()? mcon/U/d_bcmp.U Do we have bcmp() or memcmp()? mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? mcon/U/d_bfd_lib.U Is the BFD library available? +mcon/U/d_bfd_section_vma.U Does bfd_get_section_vma() take 1 or 2 arguments? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? diff --git a/mcon/U/d_bfd_section_vma.U b/mcon/U/d_bfd_section_vma.U new file mode 100644 index 0000000..0b41f44 --- /dev/null +++ b/mcon/U/d_bfd_section_vma.U @@ -0,0 +1,80 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2020, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_bfd_section_vma d_bfd_section_vma2: Trylink cat cp rm d_bfd_lib +?MAKE: -pick add $@ %< +?S:d_bfd_section_vma: +?S: This variable conditionally defines the HAS_BFD_SECTION_VMA_1ARG symbol, +?S: which indicates to the C program that the bfd_get_section_vma() routine from +?S: the BFD library takes only one argument. +?S:. +?S:d_bfd_section_vma2: +?S: This variable conditionally defines the HAS_BFD_SECTION_VMA_2ARGS symbol, +?S: which indicates to the C program that the bfd_get_section_vma() routine from +?S: the BFD library takes two arguments, the first being probably ignored. +?S: This was the old behaviour (before 2020-03 at least), the new behaviour +?S: being to use a new 1-argument signature. +?S:. +?C:HAS_BFD_SECTION_VMA_1ARG: +?C: This symbol, if defined, indicates that the bfd_get_section_vma() routine +?C: from the BFD library takes only one argument, which is the new behaviour +?C: starting from 2020-03 at least. +?C:. +?C:HAS_BFD_SECTION_VMA_2ARGS: +?C: This symbol, if defined, indicates that the bfd_get_section_vma() routine +?C: from the BFD library takes two arguments, which is the old behaviour, +?C: with the first argument probably ignored underneath. +?C:. +?H:#$d_bfd_section_vma HAS_BFD_SECTION_VMA_1ARG /**/ +?H:#$d_bfd_section_vma2 HAS_BFD_SECTION_VMA_2ARGS /**/ +?H:. +?F:!head.c +: see whether d_bfd_get_section_vma exists and takes 1 or 2 arguments +$cat >head.c < +int main(void) +{ + bfd *b = 0; + asection *sec = 0; +EOC +case "$d_bfd_lib" in +$undef) + d_bfd_section_vma=$undef + d_bfd_section_vma2=$undef + ;; +*) + $cp head.c try.c + $cat >>try.c <>try.c < Date: Mon, 16 Mar 2020 21:44:05 +0100 Subject: Fixed typo in metalint man page. --- mcon/man/mlint.SH | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mcon/man/mlint.SH b/mcon/man/mlint.SH index c46ded2..6d7478e 100755 --- a/mcon/man/mlint.SH +++ b/mcon/man/mlint.SH @@ -260,7 +260,7 @@ The file is listed more than once on the ?F: line, under the same name. This does not appear when declaring both a private UU file and a public file with the same name, for instance. .TP -"(?F) UU file $uufile in non-special unit ignored." +"(?F) UU file 'xxx' in non-special unit ignored." Private UU files (i.e. files like the \fImyread\fR script created for later perusal by \fIConfigure\fR) may only be created in special units. Exceptions allowed if the ?F: line is preceded by a proper ?LINT: hint. -- cgit v1.2.3 From 35f0ffa60c3ca18b865718fd83f7b4c5e90f205e Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Tue, 17 Mar 2020 10:10:38 +0100 Subject: Reworked BFD section tests. It's not only bfd_get_section_vma() which is impacted! The change in the BFD library, starting with 2.34, is rather that: - bfd_section_xxx() accessors now take only the BFD section as argument. - bfd_get_section_xxx() accessors, which used 2 arguments, are removed. The first argument in bfd_get_section_xxx() calls was the BFD descriptor and it was purely ignored in recent versions of the library. --- MANIFEST | 2 +- mcon/U/d_bfd_section.U | 49 ++++++++++++++++++++++++++++ mcon/U/d_bfd_section_vma.U | 80 ---------------------------------------------- 3 files changed, 50 insertions(+), 81 deletions(-) create mode 100644 mcon/U/d_bfd_section.U delete mode 100644 mcon/U/d_bfd_section_vma.U diff --git a/MANIFEST b/MANIFEST index 35aaa0b..343abc8 100644 --- a/MANIFEST +++ b/MANIFEST @@ -172,7 +172,7 @@ mcon/U/d_backtrace.U Do we have backtrace()? mcon/U/d_bcmp.U Do we have bcmp() or memcmp()? mcon/U/d_bcopy.U Do we have bcopy() or memcpy()? mcon/U/d_bfd_lib.U Is the BFD library available? -mcon/U/d_bfd_section_vma.U Does bfd_get_section_vma() take 1 or 2 arguments? +mcon/U/d_bfd_section.U Do bfd_section_xxx() accessors exist with 1 argument? mcon/U/d_bindtxtcode.U Do we have bind_textdomain_codeset()? mcon/U/d_brokstat.U Check whether stat() macros are broken mcon/U/d_bsdjmp.U Do we have BSD _setjmp() and _longjmp()? diff --git a/mcon/U/d_bfd_section.U b/mcon/U/d_bfd_section.U new file mode 100644 index 0000000..d876541 --- /dev/null +++ b/mcon/U/d_bfd_section.U @@ -0,0 +1,49 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2020, Raphael Manfredi +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_bfd_section: Trylink cat d_bfd_lib +?MAKE: -pick add $@ %< +?S:d_bfd_section: +?S: This variable conditionally defines the HAS_BFD_SECTION_1ARG symbol, +?S: which indicates to the C program that the bfd_section_xxx() accessors +?S: from the BFD library exists and taks only one argument. +?S:. +?C:HAS_BFD_SECTION_1ARG: +?C: This symbol, if defined, indicates that the bfd_section_xxx() accessors +?C: from the BFD library takes only one argument, which is the new behaviour +?C: starting from BFD 2.34. +?C:. +?H:#$d_bfd_section HAS_BFD_SECTION_1ARG /**/ +?H:. +: see whether bfd_section_vma exists and takes 1 argument +case "$d_bfd_lib" in +$undef) + d_bfd_section=$undef + ;; +*) + $cat >try.c < +int main(void) +{ + bfd *b = 0; + asection *sec = 0; + + return 0 == bfd_section_vma(sec); +} +EOC + cyn="whether bfd_section_vma() takes 1 argument" + set d_bfd_section + eval $trylink + ;; +esac + diff --git a/mcon/U/d_bfd_section_vma.U b/mcon/U/d_bfd_section_vma.U deleted file mode 100644 index 0b41f44..0000000 --- a/mcon/U/d_bfd_section_vma.U +++ /dev/null @@ -1,80 +0,0 @@ -?RCS: $Id$ -?RCS: -?RCS: Copyright (c) 2020, Raphael Manfredi -?RCS: -?RCS: You may redistribute only under the terms of the Artistic License, -?RCS: as specified in the README file that comes with the distribution. -?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic License; a copy of which may be found at the root -?RCS: of the source tree for dist 4.0. -?RCS: -?MAKE:d_bfd_section_vma d_bfd_section_vma2: Trylink cat cp rm d_bfd_lib -?MAKE: -pick add $@ %< -?S:d_bfd_section_vma: -?S: This variable conditionally defines the HAS_BFD_SECTION_VMA_1ARG symbol, -?S: which indicates to the C program that the bfd_get_section_vma() routine from -?S: the BFD library takes only one argument. -?S:. -?S:d_bfd_section_vma2: -?S: This variable conditionally defines the HAS_BFD_SECTION_VMA_2ARGS symbol, -?S: which indicates to the C program that the bfd_get_section_vma() routine from -?S: the BFD library takes two arguments, the first being probably ignored. -?S: This was the old behaviour (before 2020-03 at least), the new behaviour -?S: being to use a new 1-argument signature. -?S:. -?C:HAS_BFD_SECTION_VMA_1ARG: -?C: This symbol, if defined, indicates that the bfd_get_section_vma() routine -?C: from the BFD library takes only one argument, which is the new behaviour -?C: starting from 2020-03 at least. -?C:. -?C:HAS_BFD_SECTION_VMA_2ARGS: -?C: This symbol, if defined, indicates that the bfd_get_section_vma() routine -?C: from the BFD library takes two arguments, which is the old behaviour, -?C: with the first argument probably ignored underneath. -?C:. -?H:#$d_bfd_section_vma HAS_BFD_SECTION_VMA_1ARG /**/ -?H:#$d_bfd_section_vma2 HAS_BFD_SECTION_VMA_2ARGS /**/ -?H:. -?F:!head.c -: see whether d_bfd_get_section_vma exists and takes 1 or 2 arguments -$cat >head.c < -int main(void) -{ - bfd *b = 0; - asection *sec = 0; -EOC -case "$d_bfd_lib" in -$undef) - d_bfd_section_vma=$undef - d_bfd_section_vma2=$undef - ;; -*) - $cp head.c try.c - $cat >>try.c <>try.c < Date: Thu, 9 Apr 2020 13:55:22 +0200 Subject: Use a more compact version of STATIC_ASSERT(). --- mcon/U/Assert.U | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/mcon/U/Assert.U b/mcon/U/Assert.U index 76de54d..1a38e49 100644 --- a/mcon/U/Assert.U +++ b/mcon/U/Assert.U @@ -20,7 +20,6 @@ ?X: There is no need to link the file to spot the assertion failure. ?X: $cat >static_assert.h <<'EOC' -#define STATIC_ASSERT(expr) \ - do { switch (0) { case ((expr) ? 1 : 0): case 0: break; } } while(0) +#define STATIC_ASSERT(expr) ((void) sizeof(char[1 - 2*!(expr)])) EOC -- cgit v1.2.3 From 9f837754617b4cb3a6b2dbd176e621ad83bd4c15 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand - Tux" Date: Sat, 25 Apr 2020 16:49:47 +0200 Subject: Fix repeated-word typos --- mcon/U/Getfile.U | 2 +- mcon/U/Obsol_h.U | 2 +- mcon/U/Obsol_sh.U | 2 +- mcon/U/d_tminsys.U | 2 +- pat/patlog.SH | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/mcon/U/Getfile.U b/mcon/U/Getfile.U index f5cf49b..641ea30 100644 --- a/mcon/U/Getfile.U +++ b/mcon/U/Getfile.U @@ -48,7 +48,7 @@ ?X: those are prefixes for the filename. Unless $gfpthkeep is set to 'y', ?X: gfpth is cleared on return from Getfile. ?X: -?X: If is is followed by a ~, then ~name substitution will occur. Upon return, +?X: If it is followed by a ~, then ~name substitution will occur. Upon return, ?X: $ans is set with the filename value. If a / is specified, then only a full ?X: path name is accepted (but ~ substitution occurs before, if needed). The ?X: expanded path name is returned in that case. diff --git a/mcon/U/Obsol_h.U b/mcon/U/Obsol_h.U index fc59938..c19c5a4 100644 --- a/mcon/U/Obsol_h.U +++ b/mcon/U/Obsol_h.U @@ -20,7 +20,7 @@ ?MAKE: -pick prepend $@ ./Obsol_h ?LINT:nocomment /* - * The following symbols are obsolete. They are mapped to the the new + * The following symbols are obsolete. They are mapped to the new * symbols only to ease the transition process. The sources should be * updated so as to use the new symbols only, as the support for these * obsolete symbols may end without notice. diff --git a/mcon/U/Obsol_sh.U b/mcon/U/Obsol_sh.U index de1a1e1..3b3f0d6 100644 --- a/mcon/U/Obsol_sh.U +++ b/mcon/U/Obsol_sh.U @@ -20,7 +20,7 @@ ?MAKE: -pick prepend $@ ./Obsol_sh ?LINT:nocomment # -# The following symbols are obsolete. They are mapped to the the new +# The following symbols are obsolete. They are mapped to the new # symbols only to ease the transition process. The sources should be # updated so as to use the new symbols only, since supporting of those # obsolete symbols may end without notice. diff --git a/mcon/U/d_tminsys.U b/mcon/U/d_tminsys.U index 60fc95a..548a014 100644 --- a/mcon/U/d_tminsys.U +++ b/mcon/U/d_tminsys.U @@ -20,7 +20,7 @@ ?S:. ?C:TM_IN_SYS (TMINSYS): ?C: This symbol is defined if this system declares "struct tm" in -?C: in rather than . We can't just say +?C: rather than . We can't just say ?C: -I/usr/include/sys because some systems have both time files, and ?C: the -I trick gets the wrong one. ?C:. diff --git a/pat/patlog.SH b/pat/patlog.SH index 1588af4..ff7a81f 100755 --- a/pat/patlog.SH +++ b/pat/patlog.SH @@ -252,7 +252,7 @@ system 'perl', '-S', 'patdiff', $changelog; exit 0; # All done. -# Returns true if .clog and .rlog (it it exists) are newer than .xlog. +# Returns true if .clog and .rlog (if it exists) are newer than .xlog. sub newertmp { return 1 unless -f ".xlog$bnum"; # To force regeneration return 1 if &newer(".clog$bnum", ".xlog$bnum") || -- cgit v1.2.3 From ed9965c886297c329bb6530a3cb34870666a252a Mon Sep 17 00:00:00 2001 From: Aaron Crane Date: Thu, 25 Apr 2019 10:25:09 +0100 Subject: Fix bug when $exclusions_file is specified in .package file The actual programs were trying to load the exclusions file before reading .package (or even, in one case, without trying to read it at all). I failed to notice this because I had a "-X" option that duplicated the intended use of the setting in my .package file. --- mcon/mconfig.SH | 4 ++-- mcon/mxref.SH | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/mcon/mconfig.SH b/mcon/mconfig.SH index 4917e43..42a3dc1 100755 --- a/mcon/mconfig.SH +++ b/mcon/mconfig.SH @@ -70,8 +70,6 @@ chop($date = `date`); use Getopt::Std; &usage unless getopts("dhkmostvwGMVL:X:"); -my %excluded_symbol; -read_exclusions($opt_X); $MC = $opt_L if $opt_L; # May override public library path $MC = &tilda_expand($MC); # ~name expansion chop($WD = `pwd`); # Working directory @@ -93,6 +91,8 @@ unlink 'Wanted' unless $opt_w; # Wanted rebuilt if no -w unlink 'Obsolete' unless $opt_w; # Obsolete file rebuilt if no -w &readpackage; # Merely get the package's name &init; # Various initializations +my %excluded_symbol; +read_exclusions($opt_X); # Load -X or .package equivalent `mkdir .MT 2>&1` unless -d '.MT'; # For private temporary files &locate_units; # Fill in @ARGV with a unit list diff --git a/mcon/mxref.SH b/mcon/mxref.SH index 3433edc..fa9e44e 100755 --- a/mcon/mxref.SH +++ b/mcon/mxref.SH @@ -64,8 +64,6 @@ use Getopt::Std; chop($date = `date`); chop($WD = `pwd`); # Working directory -my %excluded_symbol; -read_exclusions($opt_X); $MC = $opt_L if $opt_L; # May override library path $MC = &tilda_expand($MC); # ~name expansion chdir $MC || die "Can't chdir to $MC: $!\n"; @@ -81,7 +79,10 @@ if ($opt_V) { $NEWMANI = $opt_f || (-f 'MANIFEST.new' ? 'MANIFEST.new' : 'MANIFEST'); +&readpackage; # Merely get the package's name &init; # Various initializations +my %excluded_symbol; +read_exclusions($opt_X); # Load -X or .package equivalent `mkdir .MT 2>&1` unless -d '.MT'; # For private temporary files unlink 'Obsolete'; # Obsolete file rebuilt -- cgit v1.2.3 From 2cec35331a912b165e2dd135d22de81f34bbc83f Mon Sep 17 00:00:00 2001 From: Raphael Manfredi Date: Sat, 16 May 2020 09:50:30 +0200 Subject: Note that gccversion only contains major version. We used to say things like: case "$gccversion" in 1*) ... but that was wrong because it now starts to catch version 10 as well, for cases that only pertained to gcc version 1! We now need to say: case "$gccversion" in 1) ... 2) ... etc. to handle versions 1 and 2 differently. Thanks to Dmitry Butskoy for spotting this bug. --- mcon/U/ccflags.U | 8 ++++---- mcon/U/gccvers.U | 7 +++++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/mcon/U/ccflags.U b/mcon/U/ccflags.U index 942e462..b134f57 100644 --- a/mcon/U/ccflags.U +++ b/mcon/U/ccflags.U @@ -174,11 +174,11 @@ dflt='' case "$hint" in default|recommended) case "$gccversion" in - 1*) dflt='-fpcc-struct-return' ;; + 1) dflt='-fpcc-struct-return' ;; esac ?X: check for POSIXized ISC case "$gccversion" in - 2*) if test -d /etc/conf/kconfig.d && + 2) if test -d /etc/conf/kconfig.d && $contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1 then dflt="$dflt -posix" @@ -187,7 +187,7 @@ default|recommended) esac ?X: turn warnings on if they're using gcc case "$gccversion" in - 1*|2*) dflt="$dflt -Wall";; + 1|2) dflt="$dflt -Wall";; ?X: starting with version 3, add "-W -Wall -Wformat=2 -Wshadow" by default *) dflt="$dflt -W -Wall -Wformat=2 -Wshadow";; esac @@ -265,7 +265,7 @@ esac : the following weeds options from ccflags that are of no interest to cpp cppflags="$ccflags" case "$gccversion" in -1*) cppflags="$cppflags -D__GNUC__" +1) cppflags="$cppflags -D__GNUC__" esac case "$mips_type" in '');; diff --git a/mcon/U/gccvers.U b/mcon/U/gccvers.U index 702a5e9..b5abb47 100644 --- a/mcon/U/gccvers.U +++ b/mcon/U/gccvers.U @@ -17,6 +17,9 @@ ?S: If GNU cc (gcc) is used, this variable holds '1' or '3' (for instance) ?S: to indicate whether the compiler is version 1 or 3. This is used in ?S: setting some of the default cflags. It is set to '' if not gcc. +?S: Note that it only contains the major version number, and, when using +?S: case statements to do different things depending on the major, do not +?S: use statements like "1*)" because it will match version 1, 10, 11, etc. ?S:. ?S:gccosandvers: ?S: If GNU cc (gcc) is used, this variable the operating system and @@ -58,7 +61,7 @@ else fi $rm -f try try.* case "$gccversion" in -1*) cpp=`./loc gcc-cpp $cpp $pth` ;; +1) cpp=`./loc gcc-cpp $cpp $pth` ;; esac case "$gccversion" in '') gccosandvers='' ;; @@ -99,7 +102,7 @@ esac : gcc 3.1 complains about adding -Idirectories that it already knows about, : so we will take those off from locincpth. case "$gccversion" in -3*) +3) echo "main(){}">try.c for incdir in `$cc -v -c try.c 2>&1 | \ sed '1,/^#include <\.\.\.>/d;/^End of search list/,$d;s/^ //'` ; do -- cgit v1.2.3 From 50ca5b27f2f7c51d062b3a89d334f7243f467078 Mon Sep 17 00:00:00 2001 From: Manoj Srivastava Date: Tue, 19 May 2020 20:47:55 -0700 Subject: upgrade(new git snapshot): Ack NMUs and refresh fromn github Signed-off-by: Manoj Srivastava --- bin/packinit.SH | 2 +- debian/changelog | 31 ++++++++++++++++++ debian/compat | 1 - debian/control | 12 +++---- debian/dist.postinst | 4 +-- debian/rules | 15 ++++++--- dist.man | 4 +-- jmake/jmake.man | 2 +- mcon/U/d_fast_assert.U | 85 ++++++++++++++++++++++++++++++++++++++++++++++++++ mcon/man/mconfig.SH | 2 +- mcon/mconfig.SH | 2 ++ mcon/mxref.SH | 2 ++ pat/pat.man | 2 +- revision.h | 2 +- 14 files changed, 146 insertions(+), 20 deletions(-) delete mode 100644 debian/compat create mode 100644 mcon/U/d_fast_assert.U diff --git a/bin/packinit.SH b/bin/packinit.SH index cfe14e5..4a5a38d 100755 --- a/bin/packinit.SH +++ b/bin/packinit.SH @@ -16,7 +16,7 @@ case "$0" in esac echo "Extracting bin/packinit (with variable substitutions)" cat >packinit < Tue, 19 May 2020 20:46:55 -0700 + +dist (1:3.5-236-0.2) unstable; urgency=medium + + * Non-maintainer upload. + * debian/dist.postinst: Fix wrong direction form. + (Closes: #908187) + * debian/rules: Explicitly provide tool path to avoid usrmerge + differences and make package reproducible. (Closes: #915910) + * debian/rules: Avoid manually setting DEB_HOST_MULTIARCH, use + /usr/share/dpkg/architecture.mk instead. (lintian warning) + + -- Boyuan Yang Sun, 23 Feb 2020 17:37:44 -0500 + +dist (1:3.5-236-0.1) unstable; urgency=medium + + * Non-maintainer upload. + * New upstream snapshot (Closes: #898955) + * Fix some syntax errors in various scripts (Closes: #899207) + * Restore missing dependency libperl4-corelibs-perl + * Fix Lintian error by removing Build-Depends-Indep: dpkg-dev + + -- Dominic Hargreaves Sun, 20 May 2018 22:35:58 +0200 + dist (1:3.5-36.0001-3) unstable; urgency=medium [ Helmut Grohne ] diff --git a/debian/compat b/debian/compat deleted file mode 100644 index ec63514..0000000 --- a/debian/compat +++ /dev/null @@ -1 +0,0 @@ -9 diff --git a/debian/control b/debian/control index 592e5c8..bdfb310 100644 --- a/debian/control +++ b/debian/control @@ -1,17 +1,17 @@ Source: dist -VCS-Git: https://anonscm.debian.org/git/users/srivasta/debian/dist.git -VCS-Browser: http://anonscm.debian.org/git/users/srivasta/debian/dist.git +VCS-Git: https://salsa.debian.org/srivasta/dist.git +VCS-Browser: https://salsa.debian.org/srivasta/dist Section: devel Priority: optional Maintainer: Manoj Srivastava -Standards-Version: 4.1.3 -Build-Depends-Indep: debhelper (>= 11), sharutils, po-debconf, - gettext, dpkg-dev +Standards-Version: 4.3.0 +Build-Depends: debhelper-compat (=12) +Build-Depends-Indep: sharutils, po-debconf, gettext Package: dist Architecture: all Multi-Arch: foreign -Depends: perl, debconf (>= 1.2.0) | debconf-2.0, +Depends: perl, libperl4-corelibs-perl, debconf (>= 1.2.0) | debconf-2.0, ${misc:Depends} Description: Tools for developing, maintaining and distributing software The dist package is a set of tools meant to ease the construction diff --git a/debian/dist.postinst b/debian/dist.postinst index 7043cce..3e8da16 100644 --- a/debian/dist.postinst +++ b/debian/dist.postinst @@ -288,7 +288,7 @@ EOH set_org_perms () { chown root /etc/news/organization - if grep news /etc/group 2>&1 >/dev/null ; then + if grep news /etc/group > /dev/null 2>&1 ; then chgrp news /etc/news/organization else chgrp root /etc/news/organization @@ -397,7 +397,7 @@ case "$1" in if test ! -d /etc/news ; then mkdir /etc/news chown root /etc/news - if grep news /etc/group 2>&1 >/dev/null ; then + if grep news /etc/group > /dev/null 2>&1 ; then chgrp news /etc/news else echo "darn, you do not have news in /etc/group" diff --git a/debian/rules b/debian/rules index a70d8c6..a4abf3d 100755 --- a/debian/rules +++ b/debian/rules @@ -23,8 +23,8 @@ PAT_EXEC = patcil patdiff patbase patlog patmake patsend \ patnotify patpost patftp patname patsnap patcol \ patclean patindex -DPKG_ARCH := dpkg-architecture -export DEB_HOST_MULTIARCH := $(shell $(DPKG_ARCH) $(ha) -qDEB_HOST_MULTIARCH) +# For DEB_HOST_MULTIARCH +include /usr/share/dpkg/architecture.mk %: dh $@ @@ -35,15 +35,19 @@ override_dh_auto_configure: touch .config/nomail && \ sh ./Configure \ -de \ - -D prefix=$(PREFIX) \ + -D prefix=/usr \ -D orgname=/etc/news/organization \ -D myhostname=localhost \ -D mydomain=localdomain \ -D defeditor=/usr/ae \ - -D privlib=/usr/share/$(package) \ + -D privlib=/usr/share/$(package) \ -D pager=/bin/more \ -D mansrc=/usr/share/man/ \ -D cf_email='$(email)' \ + -D grep=/bin/grep \ + -D sed=/bin/sed \ + -D cat=/bin/cat \ + -D zcat=/bin/zcat \ -D d_berknames='define' @@ -57,6 +61,9 @@ override_dh_auto_build: override_dh_install: test -d $(MAN1DIR) || $(make_directory) $(MAN1DIR) $(MAKE) install + for script in $(TMPTOP)/usr/bin/*; do \ + test `head -1 $$script` = '#!/usr/bin/perl' && perl -c $$script ;\ + done $(MAKE) install.man $(make_directory) $(MAN7DIR) (cd $(MAN1DIR); for file in $(PAT_EXEC) ; do \ diff --git a/dist.man b/dist.man index d28da1b..250b862 100644 --- a/dist.man +++ b/dist.man @@ -1,7 +1,7 @@ .\" $Id$ .\" .\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -.\" +.\" .\" You may redistribute only under the terms of the Artistic Licence, .\" as specified in the README file that comes with the distribution. .\" You may reuse parts of this distribution only within the terms of @@ -31,7 +31,7 @@ .\" Revision 3.0 1993/08/18 12:04:07 ram .\" Baseline for dist 3.0 netwide release. .\" -.\" +.\" .de Ex \" Start of Example .sp .in +5 diff --git a/jmake/jmake.man b/jmake/jmake.man index 1c5832a..dd6de0d 100644 --- a/jmake/jmake.man +++ b/jmake/jmake.man @@ -1,7 +1,7 @@ .\" $Id$ .\" .\" Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi -.\" +.\" .\" You may redistribute only under the terms of the Artistic Licence, .\" as specified in the README file that comes with the distribution. .\" You may reuse parts of this distribution only within the terms of diff --git a/mcon/U/d_fast_assert.U b/mcon/U/d_fast_assert.U new file mode 100644 index 0000000..dba5132 --- /dev/null +++ b/mcon/U/d_fast_assert.U @@ -0,0 +1,85 @@ +?RCS: $Id$ +?RCS: +?RCS: Copyright (c) 2006, Christian Biere +?RCS: +?RCS: You may redistribute only under the terms of the Artistic License, +?RCS: as specified in the README file that comes with the distribution. +?RCS: You may reuse parts of this distribution only within the terms of +?RCS: that same Artistic License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_fast_assert: Myread Setvar cat gccversion spackage \ + sed +ccflags +cc +ldflags +optimize +?MAKE: -pick add $@ %< +?S:d_fast_assert: +?S: This variable conditionally defines FAST_ASSERTIONS. +?S:. +?C:FAST_ASSERTIONS: +?C: This symbol, when defined, indicates that the program should make +?C: use of its own asserting and failure reporting code, instead of +?C: the one from GLib. +?C:. +?H:#$d_fast_assert FAST_ASSERTIONS /**/ +?H:. +?F:!try.c !try +?LINT:set d_fast_assert +?LINT:change ccflags +: determine whether to enable fast assertions +echo " " +case "$d_fast_assert" in +"$undef") + dflt=n;; +*) + dflt=y;; +esac +$cat <try.c <<'EOC' +int main() +{ + return 0; +} +EOC + if $cc $ccflags -momit-leaf-frame-pointer $ldflags -o try try.c >/dev/null 2>&1 + then + case "$ccflags $optimize" in + *-momit-leaf-frame-pointer*) ;; + *-O0*) ;; + *-O*) + ccflags="-momit-leaf-frame-pointer $ccflags" + echo "Added -momit-leaf-frame-pointer to the cc flags." >&4 + ;; + esac + else + case "$ccflags" in + *-momit-leaf-frame-pointer*) + echo "Stripping -momit-leaf-frame-pointer from cc flags." >&4 + ccflags=`echo $ccflags | $sed 's/ *-momit-leaf-frame-pointer//'` + ;; + esac + fi + ;; + esac +;; +esac + diff --git a/mcon/man/mconfig.SH b/mcon/man/mconfig.SH index 1dd8a97..112c6f1 100755 --- a/mcon/man/mconfig.SH +++ b/mcon/man/mconfig.SH @@ -23,7 +23,7 @@ $spitshell >metaconfig.$manext <