Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Fascinating! And you keep old Macs around to run the toolchain on?


Been using emulators for years - first classic or whatever it was called on OSX, then basilliskII/sheepshaver, and now mpw:

https://github.com/ksherlock/mpw

Here's the end of a Makefile, very unix-like:

  APPL = ${TYPE}${NAME}
  DATA = DATA${NAME}
  OBJS = ${NAME}.p.o
  LIBS = ../WordSum.asm.o ../LASysLib.a.o ../PasLib.o
  
  LANG = C
  
  MPWC = /usr/local/bin/mpw
  
  AS = Asm
  AFLAGS = 
  
  CC = SC
  CFLAGS = -mc68020 -mc68881 -b2 -Opt all 
  
  PC = Pascal
  PFLAGS = -mc68020 -mc68881
  
  LD = Link
  LDFLAGS = -w -t LApp -c MPWX -m MAIN -sg ${NAME}
  #    Link -w -t TEXT -c RWG1 -rt CODE -m HELPLOOP -sg HELPLOOP
  
  CFMFLAGS =
  # CFM = ${MPW:/mpw=/cfm}
  # CFM = /usr/local/bin/cfm
  CFM = cfm
  
  # TFTPFLAGS = -vt
  TFTPFLAGS =
  # TFTP = ${MPW:/mpw=/tftptool}
  # TFTP = /usr/local/bin/tftptool
  TFTP = tftptool
  
  .SUFFIXES : .p.o .p .c.o .c .asm.o .asm
  
  .phoney : all clean install
  
  all : ${APPL} ${DATA}
  
  .asm.asm.o :
  	${MPWC} $(MPWFLAGS) $(AS) $(AFLAGS) $<
  
  .c.c.o :
  	${MPWC} $(MPWFLAGS) $(CC) $(CFLAGS) $<
  
  .p.p.o :
  	${MPWC} $(MPWFLAGS) $(PC) $(PFLAGS) -r $<
  
  ${NAME} : ${OBJS} ${LIBS}
  	$(MPWC) $(MPWFLAGS) $(LD) $(LDFLAGS) ${OBJS} ${LIBS} \
  	  -o $@
  
  ${APPL} : ${NAME}
  	$(CFM) $(CFMFLAGS) $< $@
  
  mult.asm : mult.py
  	./mult.py >mult.asm
  
  mult : mult.asm.o
  	$(MPWC) $(MPWFLAGS) $(LD) $(LDFLAGS) $< -o $@
  
  ${DATA} : mult
  	$(CFM) $(CFMFLAGS) $< $@
  
  # send DATAFILE first
  install : ${APPL} ${DATA}
  	$(TFTP) $(TFTPFLAGS) ${NODE} ${DATA}
  	$(TFTP) $(TFTPFLAGS) ${NODE} $<
  
  clean :
  	$(RM) -f ${TYPE}${NAME} ${NAME} ${OBJS}




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: