nasm.nsi: add NASM Manual; automate version generation

Add the NASM Manual (as a PDF) to the Windows installer, and abstract
out the version number.
This commit is contained in:
H. Peter Anvin 2009-04-06 19:12:34 -07:00
parent a606aced2c
commit d8979222e9
3 changed files with 22 additions and 12 deletions

View file

@ -111,6 +111,8 @@ version.sed: version version.pl
$(PERL) $(srcdir)/version.pl sed < $(srcdir)/version > version.sed
version.mak: version version.pl
$(PERL) $(srcdir)/version.pl make < $(srcdir)/version > version.mak
version.nsh: version version.pl
$(PERL) $(srcdir)/version.pl nsis < $(srcdir)/version > version.nsh
# This source file is generated from the standard macros file
# `standard.mac' by another Perl script. Again, it's part of the
@ -158,7 +160,7 @@ pptok.ph: pptok.dat pptok.pl perllib/phash.ph
PERLREQ = macros.c insnsb.c insnsa.c insnsd.c insnsi.h insnsn.c \
regs.c regs.h regflags.c regdis.c regdis.h regvals.c \
tokhash.c tokens.h pptok.h pptok.c pptok.ph \
version.h version.mac version.mak
version.h version.mac version.mak version.nsh
perlreq: $(PERLREQ)
install: nasm$(X) ndisasm$(X)

View file

@ -22,9 +22,9 @@
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
!include "version.nsh"
!define PRODUCT_NAME "Netwide Assembler"
!define PRODUCT_SHORT_NAME "nasm"
!define VERSION "2.06rc7"
!define PACKAGE_NAME "${PRODUCT_NAME} ${VERSION}"
!define PACKAGE_SHORT_NAME "${PRODUCT_SHORT_NAME}-${VERSION}"
@ -50,16 +50,16 @@ Section "${PACKAGE_NAME}"
SectionIn RO
SetOutPath "$INSTDIR\."
File "ldrdf.exe"
File "nasm.exe"
# File "nasmdoc.pdf"
File "ndisasm.exe"
File "rdf2bin.exe"
# File "rdf2com.exe"
File "rdf2ihx.exe"
File "rdfdump.exe"
File "rdflib.exe"
File "rdx.exe"
File "doc/nasmdoc.pdf"
File "rdoff/ldrdf.exe"
File "rdoff/rdf2bin.exe"
File "rdoff/rdf2com.exe"
File "rdoff/rdf2ihx.exe"
File "rdoff/rdfdump.exe"
File "rdoff/rdflib.exe"
File "rdoff/rdx.exe"
FileOpen $0 "nasmpath.bat" w
IfErrors skip
FileWrite $0 "@set path=%path%;$INSTDIR$\r$\n"
@ -71,7 +71,8 @@ SectionEnd
Section "Start Menu Shortcuts"
CreateDirectory "$SMPROGRAMS\${PACKAGE_NAME}"
CreateShortCut "$SMPROGRAMS\${PACKAGE_NAME}\Uninstall ${PACKAGE_NAME}.lnk" "$INSTDIR\Uninstall ${PACKAGE_NAME}.exe" "" "$INSTDIR\Uninstall ${PACKAGE_NAME}.exe" 0
CreateShortCut "$SMPROGRAMS\${PACKAGE_NAME}\NASM.lnk" "$INSTDIR\nasmpath.bat" "" "$INSTDIR\nasmpath.bat" 0
CreateShortCut "$SMPROGRAMS\${PACKAGE_NAME}\NASM Shell.lnk" "$INSTDIR\nasmpath.bat" "" "$INSTDIR\nasmpath.bat" 0
CreateShortCut "$SMPROGRAMS\${PACKAGE_NAME}\NASM Manual.lnk" "$INSTDIR\nasmdoc.pdf" "" "$INSTDIR\nasmdoc.pdf" 0
SectionEnd
Section "Desktop Icons"
@ -80,7 +81,8 @@ SectionEnd
Section "Uninstall"
Delete /rebootok "$DESKTOP\NASM.lnk"
Delete /rebootok "$SMPROGRAMS\${PACKAGE_NAME}\NASM.lnk"
Delete /rebootok "$SMPROGRAMS\${PACKAGE_NAME}\NASM Shell.lnk"
Delete /rebootok "$SMPROGRAMS\${PACKAGE_NAME}\NASM Manual.lnk"
Delete /rebootok "$SMPROGRAMS\${PACKAGE_NAME}\Uninstall ${PACKAGE_NAME}.lnk"
RMDir "$SMPROGRAMS\${PACKAGE_NAME}"

View file

@ -135,6 +135,12 @@ if ( $what eq 'h' ) {
printf "NASM_MINOR_VER=%d\n", $nmin;
printf "NASM_SUBMINOR_VER=%d\n", $nsmin;
printf "NASM_PATCHLEVEL_VER=%d\n", $nplvl;
} elsif ( $what eq 'nsis' ) {
printf "!define VERSION \"%s\"\n", $line;
printf "!define MAJOR_VER %d\n", $nmin;
printf "!define MINOR_VER %d\n", $nmin;
printf "!define SUBMINOR_VER %d\n", $nsmin;
printf "!define PATCHLEVEL_VER %d\n", $nplvl;
} elsif ( $what eq 'id' ) {
print $nasm_id, "\n"; # Print ID in decimal
} elsif ( $what eq 'xid' ) {