# Makefile for jam # Default settings for Unix / Linux. # Note: Configurations below may rely on these settings. CC = cc CFLAGS = EXENAME = ./jam0 TARGET = -o $(EXENAME) # Special flavors - uncomment appropriate lines # AIX needs -lbsd, and has no identifying cpp symbol # Use _AIX41 if you're not on 3.2 anymore. # Also supports AIX53 #CC = gcc #CFLAGS = -D_AIX #LINKLIBS = -lbsd #EXENAME = ./jam0 #TARGET = -o $(EXENAME) # Darwin 90 # use gcc-4.2, gcc is linked to gcc-4.2 #CC = gcc$(COMPILER_SUFFIX) #CFLAGS = -D__DARWIN__ #EXENAME = ./jam0 #TARGET = -o $(EXENAME) # Cygwin - gcc & cygwin #CC = gcc #CFLAGS = -D__cygwin__ # Interix - gcc #CC = gcc # NCR seems to have a broken readdir() -- use gnu #CC = gcc # X64 NET 2005-2015 # Configured with MS CRT deprecation disabled. # Use the following settings in your Command Prompt to build jam and P4 API # Note: Do not uncomment these settings in this makefile. # run the Visual Studio batch script vc/bin/amd64/vcvars64.bat # set OSPLAT=x64 # set MSCVNT=%VSINSTALLDIR%\VC # set MSVSVER= # where VS2005=8, VS2008=9, VS2010=10, VS2012=11, VS2013=12, VS2015=13 # set BUILD_WITH_SUB_DIRECTORIES=false # # Only uncomment the lines immediately below. CC = cl /nologo CFLAGS = /favor:blend /MT -D_M_AMD64 -DNT -D_CRT_SECURE_NO_DEPRECATE /wd4996 TARGET = /Fejam0 LINKLIBS = oldnames.lib kernel32.lib libcmt.lib EXENAME = .\jam0.exe # X86 NET 2005-2015 # Configured with MS CRT deprecation disabled. # Use the following settings in your Command Prompt to build jam and P4 API # Note: Do not uncomment these settings in this makefile. # run the Visual Studio batch script vc/bin/vcvars32.bat # set OSPLAT=x86 # set MSCVNT=%VSINSTALLDIR%\VC # set MSVSVER= # where VS2005=8, VS2008=9, VS2010=10, VS2012=11, VS2013=12, VS2015=13 # set BUILD_WITH_SUB_DIRECTORIES=false # # Only uncomment the lines immediately below. #CC = cl /nologo #CFLAGS = /MT -DNT -D_CRT_SECURE_NO_DEPRECATE /wd4996 #TARGET = /Fejam0 #LINKLIBS = oldnames.lib kernel32.lib libcmt.lib #EXENAME = .\jam0.exe # MingW32 #CC = gcc #CFLAGS = -DMINGW #EXENAME = ./jam0 #TARGET = -o $(EXENAME) # MinGW-w64 #CC = gcc #CFLAGS = -DMINGW64 #EXENAME = ./jam0 #TARGET = -o $(EXENAME) # MPEIX #CC = gcc #CFLAGS = -I/usr/include -D_POSIX_SOURCE # SOLARIS #CC = gcc # QNX rtp (neutrino) #CC = gcc # AS400 - icc wrapper around ILE C compiler. # CC = icc # CFLAGS = -DAS400 -qDUPPROC # # Can't use ./jam0 as EXENAME on AS/400. It confuses icc et al. # EXENAME = jam0 SOURCES = \ builtins.c \ command.c compile.c execas400.c execunix.c execvms.c expand.c \ filent.c fileos2.c fileunix.c filevms.c glob.c hash.c \ headers.c jam.c jambase.c jamgram.c lists.c make.c make1.c \ newstr.c option.c parse.c pathunix.c pathvms.c regexp.c \ rules.c scan.c search.c timestamp.c variable.c all: $(EXENAME) $(EXENAME) $(EXENAME): $(CC) $(TARGET) $(CFLAGS) $(SOURCES) $(LINKLIBS)
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#2 | 26292 | Joel Van Eenwyk | Update jam Makefile for Windows and add binaries. | ||
#1 | 26290 | Joel Van Eenwyk | "Forking branch main of perforce_software-jam to joel_van_eenwyk-jam." | ||
//guest/perforce_software/jam/src/Makefile | |||||
#19 | 23298 | Nick Poole |
Updating Jam source The changes here include a simplified Windows build process: the makefile now has 2 MSVC sections, one 32-bit the other 64-bit. |
||
#18 | 9895 | brett |
Build rules for jam on Darwin 9.0. p4transfer.py: Transferred from production |
||
#17 | 9894 | brett |
Update build rules for AIX53. p4transfer.py: Transferred from production |
||
#16 | 9892 | brett |
Clarify that Windows VS Net settings work for 2005, 2008 and 2010. p4transfer.py: Transferred from production |
||
#15 | 9890 | brett |
Follow up change to 133366 for NET 2005 x86/x64 builds. p4transfer.py: Transferred from production |
||
#14 | 9888 | cmullins |
Jam 2.5.2/99992 Solaris 8 sparc (sunfire) gcc-3.3.2 p4transfer.py: Transferred from production |
||
#13 | 9887 | brett |
Add the _M_AMD64 flag to the amd64 build. The rest does indeed produce x64 binaries as verified by dumpbin /headers p4d.exe. With change 81112, the x64 p4d.exe no longer faults. p4transfer.py: Transferred from production |
||
#12 | 9886 | brett |
Change default build back to Unix from NT, correcting a previous mistake. Related to change 81710, amd64 build changes. p4transfer.py: Transferred from production |
||
#11 | 9885 | brett |
Jam changes for building on the AMD64 platform. The .NET 2005 beta2 compiler requires several flags. First it is necessary to turn off the depreciation stuff, CRT functions like strcpy sprintf and so on are now viewed as insecure by MS. For now it is still possible to use them with the correct application of compile flags. MS is making noises in line with taking these functions away for good. The "Win64" token was used for 64 bit builds. This is now a bit ambiguous since it covers x64, ia64 and em64t. With this change Win64 has been retired and we use x64 for amd64, ia64 for the Itanium and em64t for the extended memory processors. Set MSVCVer accordingly. MSVCNT is set as always, to the location of the VC directory, VC98, VC7 and now just VC. For the most part the x64 build works on amd64, the exception being a template problem in nettcp.cc. That problem will not be corrected in this change. p4transfer.py: Transferred from production |
||
#10 | 9884 | tony |
jam and 2004.2 p4 client for AS/400. Built on AS/400 V5R2 with native ILE C/C++ compiler. Note, this build reports itself as P4/AS400/2004.2/76944 but this change contains porting changes that were required to make the build work so the changelist number is incorrect. This can be resolved with a clean build for 2005.1 at a later date. p4.sav and jam.sav are AS/400 "Save Files" that can be used to install the software on an AS/400 machine. The p4.sav file includes the p4.cmd and p4sync.cmd files we distributed with our older AS/400 builds. These files define a forms-type interface for supplying the parameters to the commands when you run them. Porting change only. No functional change. p4transfer.py: Transferred from production |
||
#9 | 2485 | rmg |
Beos updates for jam from "Ingo Weinhold" <bonefish@cs.tu-berlin.de>. Porting change. === computer:1666: Change 35634 by seiwald@play-seiwald on 2002/08/16 11:42:39 |
||
#8 | 2481 | rmg |
Put . in the path of jam0, at long last. === computer:1666: Change 34039 by seiwald@tricks on 2002/06/03 11:05:04 Jam relnote about $(EXENAME) in the Makefile. User visible change being documented in RELNOTES. === computer:1666: Change 34517 by seiwald@play-seiwald on 2002/06/22 00:19:32 |
||
#7 | 1571 | Perforce staff |
MINGW port by Max Blagai. Porting change documented in RELNOTES. |
||
#6 | 1355 | rmg |
Record integration of Change 281 by john_belmonte. (This was actually dropped in as part of the Jam 2.3 release; the present change serves to record the fact in the integration history, only.) |
||
#5 | 1319 | rmg |
Jam 2.3 + Perforce's internal changes. This change is a drop of the Perforce internal Jam changes since the 2.3 public release. The individual changes represented herein are preserved in the //guest/richard_geiger/intjam/ branch. The intent of this drop is to provide a base, from which other contributors' Jam branches may be integrated into. It is not intended to become a packaged release in this state. We will be integrating changes from other users prior to creating the next packaged release. Please refer to the src/RELNOTES file for an overview of the changes present in this integration. - Richard Geiger Open Source Engineer at Perforce |
||
#4 | 486 | Perforce staff |
Jam 2.3. See RELNOTES for a list of changes from 2.2.x. Just about every source file was touched when jam got ANSI-fied. |
||
#3 | 67 | Laura Wingerd |
Integrate Perforce's jam changes & project page update (change 59, change 60, change 61, change 62, change 63, change 64, change 66) |
||
#2 | 5 | Perforce maintenance | Jam/MR 2.2.4 (HDRPATTERN, JAMUNAME, JAMSHELL, plus misc tweaks) | ||
#1 | 2 | laura | Add Jam/MR 2.2 source |