summaryrefslogtreecommitdiff
path: root/Mkfiles
Commit message (Collapse)AuthorAgeFilesLines
* msvc.mak: fix syntax for excluding config.hH. Peter Anvin (Intel)2020-07-011-1/+1
| | | | | | mkdep.pl wants a / regardless of what the target path separator is. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
* Makefile: add warnings.src to perlreq; longer list of binary filesH. Peter Anvin (Intel)2020-06-272-2/+2
| | | | | | | | | | | | | | | | Add warnings.src to PERLREQ. If this isn't done, warnings.src ends up in the xdoc tarball rather than the release tarball, which means that unless the user can "make warnings" manually (which requires Perl) then they can't build the documentation. As this only affects the documentation build, it probably does not warrant a point release. Add a few more extensions to the list of recognized binary extensions for the purpose of generating a .zip file with DOS line ending conventions. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
* BR 3392648: rename float.[ch] to floats.[ch]H. Peter Anvin (Intel)2020-06-142-2/+2
| | | | | | | | | Haiku apparently wants to include <float.h> rather than "float.h". Rename float.[ch] to floats.[ch] to avoid unnecessary namespace confusion. Reported-by: <alaviss0+nasm@gmail.com> Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
* Makefile: run cleandeps, no need to config.status --recheckH. Peter Anvin (Intel)2020-06-042-8/+4
| | | | | | | There is no point to run config.status --recheck just because we have changed Makefile.in. Just run config.status. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
* iflags: move definitions to a separate file; auto-generate moreH. Peter Anvin (Intel)2019-08-062-2/+2
| | | | | | | | | | Move the definitions to a separate file, in order to separate code from data better. We can auto-generate more information about the instruction flags, so let's do so. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
* Mkfiles: run "make cleandist"H. Peter Anvin2018-12-262-2/+38
| | | | | | Run "make cleandist" to update the file lists. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Merge remote-tracking branch 'origin/nasm-2.14.xx'H. Peter Anvin (Intel)2018-12-132-4/+6
|\ | | | | | | | | | | | | | | | | | | | | Resolved Conflicts: Makefile.in Mkfiles/msvc.mak Mkfiles/openwcom.mak asm/nasm.c nasmlib/alloc.c Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
| * malloc: handle potential infinite loop in nasm_alloc_failed()H. Peter Anvin (Intel)2018-12-132-2/+2
| | | | | | | | | | | | | | | | | | It is possible on memory exhaustion that nasm_fatal() might cause another allocation error, thus calling nasm_alloc_failed() again. If we find us in nasm_alloc_failed() for a second time, try to get a message out and then call abort(). Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
* | nasmlib: Add nasm_(v)asprintf()H. Peter Anvin (Intel)2018-12-122-6/+6
| | | | | | | | | | | | | | | | | | Add a version of (v)asprintf(), which allocates a string on the heap. Unlike the standard version of (v)asprintf(), we return the pointer; if one wants the length of the string then one can simply use the %n pattern. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
* | strlist: merge the strtbl and strlist interfacesH. Peter Anvin (Intel)2018-12-112-2/+0
| | | | | | | | | | | | | | | | The currently-unused strtbl was basically a slightly different version of strlist, with the find and linearize capabilities. Merge these two together by augmenting strlist to have the same capabilities. Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
* | Run make cleandepsH. Peter Anvin2018-11-282-2/+2
|/
* MSVC: fix dependency generation and building RDOFF under MSVCH. Peter Anvin2018-06-181-22/+17
| | | | | | | | | | | | 1. The mkdep.pl program didn't handle excluded dependencies correctly, causing it to error out due to config/config.h not existing. 2. NMAKE is sensitive to the order suffixes appear in .SUFFIXES, causing it to try to use the builtin rule .c.exe instead of .c.obj -> .obj.exe. 3. NMAKE doesn't handle the && operator between commands. 4. The !ifdef jungle around dependency generation was wrong. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* openwcom.mak: use \ as path separatorsH. Peter Anvin2018-02-221-153/+153
| | | | | | | | | | Apparently OS/2 really wants \ as path separators, and that is really the main target for OpenWatcom these days, so change the path separator in this Makefile. For building on Linux we'd be better off with a GNU Makefile anyway, but what is the point, really... Reported-by: Andy Willis <abwillis1@gmail.com> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Eliminate filename length restrictions, remote ofmt->filename()H. Peter Anvin2017-12-202-2/+8
| | | | | | | | | | | Get rid of remaining dependencies on FILENAME_MAX, which ought to have been removed a long time ago. Remove ofmt->filename(); all implementations pretty much do the same thing and there is absolutely no reason to duplicate that functionality all over the place. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* msvc.mak: fix yet another recursion situationH. Peter Anvin2017-11-081-3/+6
| | | | | | | We don't want to call make to rebuild msvc.dep when that is what we are actually trying to do, over and over again... Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* msvc.mak: avoid infinite recursion on msvc.depH. Peter Anvin2017-11-081-2/+2
| | | | | | | We can't call $(MAKE) on msvc.dep if running that requires us to have msvc.dep... Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* msvc.mak: (hopefully) make external dependencies work with NMAKEH. Peter Anvin2017-11-081-10/+30
| | | | | | Hopefully this will make external dependencies work with NMAKE. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* Make dependency generation a bit more robustH. Peter Anvin2017-11-061-2/+8
| | | | | | | Improve the corner cases where we might end up with bogus dependencies. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Makefile: don't store dependency information in gitH. Peter Anvin2017-11-012-812/+15
| | | | | | | Make it possible to keep dependency information separate from the Makefiles, so we don't have to deal with it noisifying the git logs. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* make alldepsH. Peter Anvin2017-11-012-100/+106
|
* ilog2(): inline functions if practicalH. Peter Anvin2017-09-272-36/+36
| | | | | | | For many (most?) targets these will be very small functions, so inline them. However, just in case make these external library functions. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* Merge remote-tracking branch 'origin/nasm-2.13.xx'H. Peter Anvin2017-06-231-0/+3
|\ | | | | | | | | | | | | Resolved Conflicts: common/common.c Signed-off-by: H. Peter Anvin <hpa@zytor.com>
| * Document/update dependencies for the documentationH. Peter Anvin2017-05-021-0/+3
| | | | | | | | Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Merge remote-tracking branch 'origin/elf'H. Peter Anvin2017-04-292-462/+520
|\ \ | |/ |/|
| * Clean up byteorder functionsH. Peter Anvin2017-04-242-470/+516
| | | | | | | | | | | | | | Move byte order handling functions to their own header file, and try to be more specific about how exactly to handle things. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
| * output: generic string table implementationH. Peter Anvin2017-04-242-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | Several output formats use "string tables", which is a collection of null-terminated (C) strings which are referenced by a byte offset into the string table. A single string can be referenced an arbitrary number of times. As this is quite simple to implement with a hash table, we do exactly that. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Mkfiles/README: add a blank lineH. Peter Anvin2017-04-261-0/+1
| | | | | | | | | | | | Trivial formatting fix: add a blank line for readability. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* | Windows portability: fix construct in findfont.ph, README updateH. Peter Anvin2017-04-251-5/+10
|/ | | | | | | | | Fix a construct in doc/findfont.ph which crashes Perl on Windows unconditionally. Improve the README for building the full package with MSVC. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* nasmlib: add path-splitting functionsH. Peter Anvin2017-04-232-14/+26
| | | | | | | | | Some debugging formats may need to be able to split paths into directory name and filename, at least. This is kind of iffy, at least across platforms, but that isn't really expected to be an issue in practice... we hope. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* rdoff: use nasm-provided safe memory allocation and I/OH. Peter Anvin2017-04-172-28/+42
| | | | | | | | | We already have abort-on-error memory allocation and I/O operations in nasmlib, so use them for rdoff as well. Delete long-since-obsolete rdoff Mkfiles directory. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* doc: add the option to generate an uncompressed PDFH. Peter Anvin2017-04-101-1/+2
| | | | | | | | An uncompressed PDF is about twice as big, but if one is using an external compression program (e.g. .pdf.xz) it compresses far better. Use it for the RPM specfile. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Mkfiles/README: the documentation also requires Font::TTFH. Peter Anvin2017-04-101-1/+2
| | | | | | We need Font::TTF to finally build the documentation... Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Mkfiles/README: Update Windows instructionsH. Peter Anvin2017-04-101-1/+3
| | | | Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Makefile.in: more fixes to rdoff commandsH. Peter Anvin2017-04-061-2/+2
| | | | | | The rdoff command links are cantankeous. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* msvc: finally make it possible to build the full Windows packageH. Peter Anvin2017-04-062-6/+16
| | | | | | | Finally make it possible to build the full Windows install package with MSVC tools. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* msvc.mak: finally make work with shared rdoff rulesH. Peter Anvin2017-04-061-35/+25
| | | | | | We can finally make the shared rdoff rules work. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* Makefile.in: make rules for rdoff only define dependenciesH. Peter Anvin2017-04-061-5/+0
| | | | | | | MSVC command-line syntax doesn't allow us to share these rules if explicit. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* rdoff: move rdoff build into main Makefile to make it build on WindowsH. Peter Anvin2017-04-062-467/+576
| | | | | | | NSIS packages rdoff, and we really want to be able to build the full NSIS package on an MSVC platform. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* BR 3392397: WMAKE uses a nonstandard syntax for phony targetsH. Peter Anvin2017-04-052-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | The standard syntax for a phony target in Make is: target: <dependencies> .PHONY: target ... however, Watcom WMAKE seems to use target: <dependencies> .SYMBOLIC and furthermore, seems to *require* it. Therefore, remove the "perlreq" target from the automatically distributed region and move it into the specific region; it should not need to change anyway since the PERLREQ list itself is still synced. If it was only a matter of the .SYMBOLIC versus .PHONY token it would be easy enough to change that in syncfiles.pl, but this syntax change is big enough that it doesn't make enough sense to worry about. Reported-by: sezero <sezero@users.sourceforge.net> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* MSVC compatibility: clean up the handling of _stati64/_fstati64H. Peter Anvin2017-04-051-1/+1
| | | | | | | | | | | On Windows we need to use _stati64/_fstati64 in order to handle large file sizes, but the handling was broken in the canned MSVC++ configuration. Clean it up and fix it. This addresses BR 3392398. Reported-by: Nikolai Saoukh <nms@otdel-1.org> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* BR 3392395: unbreak msvc.mak build due to a stray backslashNikolai Saoukh2017-04-051-1/+1
| | | | | | | Extra backslash had eaten one innocent line, thus compiler flags (ALL_CFLAGS) are gone. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Mkfiles: harmonize how perl and (if available) makensis is runH. Peter Anvin2017-04-032-4/+11
| | | | | | Use the same macros to run Perl and makensis across all Makefiles. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Makefiles: distribute file generation rules via syncfiles.plH. Peter Anvin2017-04-032-110/+209
| | | | | | | | Distribute the file generation rules to auxiliary Makefiles via syncfiles.pl. These rules are OS- and Make-dialect-generic enough that our mangling script handles them well enough. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Mkfiles: remove unsupported Mkfiles/netware.makH. Peter Anvin2017-04-032-379/+0
| | | | | | | If someone really, really care about building NASM for Netware(!) anymore, then they probably can use the autoconf-driven build script. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Rename insns-iflags.pl -> insns-iflags.ph, add missing dependencyH. Peter Anvin2017-04-032-4/+4
| | | | | | | insns-iflags.ph is included from another Perl script, so rename it .ph (Perl header). Add missing dependency to the main Makefile. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Add generic perfect string hashes, use for directivesH. Peter Anvin2017-04-033-274/+313
| | | | | | | | | | | | | | Add a generic facility for generating perfect string hashes, where all that is needed is an enum and a string table. The existing mechanism using a custom Perl script wrapped around a module continues to be available for any use case where this particular approach isn't sophisticated enough. Much of this patch comes from renaming "enum directives" to "enum directive" as a result of the string hash generator expecting a set of uniform naming conventions. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
* Mkfiles: remove useless/broken owlinux.mak, update README for openwcom.maksezero2017-03-312-611/+3
| | | | | | | To build with OpenWatcom and a standard Unix/GNU Make, use the owcc wrapper. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* Run "make alldeps"H. Peter Anvin2017-03-084-18/+18
| | | | | | Missing dependencies strike again :( Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* Add a generic pragma-handling infrastructureH. Peter Anvin2017-03-074-0/+22
| | | | | | | Add infrastructure for handling %pragmas with a variety of namespaces, etc., etc... Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
* asm/*: Move directive processing to its own file, refactor error handlingH. Peter Anvin2017-03-074-382/+441
| | | | | | | | Move directive processing to its own file, and move nasmlib/error.c to asm/error.c (it was not used by the disassembler); remove some extern declarations from .c files, and do some general code cleanups. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>