home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 18 REXX / 18-REXX.zip / configbt.zip / Config.cmd
OS/2 REXX Batch file  |  2002-04-26  |  4KB  |  119 lines

  1. /* $Id: Config.cmd,v 1.2 2002/04/26 23:09:43 smilcke Exp $ */
  2.  
  3. /*
  4.  * Configuration script.
  5.  * Generates global makefile.inc.
  6.  *
  7.  * Copyright (c) 1999-2000 knut st. osmundsen (knut.stange.osmundsen@pmsc.no)
  8.  * Modified for BT-Drivers 2002 Stefan Milcke
  9.  *
  10. */
  11.  
  12. Call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs';
  13. Call SysLoadFuncs;
  14.  
  15. Parse Arg sIncFile
  16. if (sIncFile='') Then sIncFile='paths.mak'
  17.  
  18. Say 'Current directory:'directory()
  19. Say 'Generating 'directory()'\'sIncFile
  20.  
  21. /* Status */
  22. Say 'Configuring the LXAPI32 driver...'
  23.  
  24. /* delete old file */
  25. Call SysFileDelete sIncFile
  26.  
  27. /* open target file */
  28. If (Stream(sIncFile, 'C', 'OPEN WRITE' ) <> '') Then
  29. Do
  30.  Call LineOut sIncFile, '################################################################################'
  31.  Call LineOut sIncFile, '# Generated by 'directory()'\config.cmd'
  32.  Call LineOut sIncFile, '################################################################################'
  33.  Call LineOut sIncFile, ''
  34.  Call LineOut sIncFile, '################################################################################'
  35.  Call LineOut sIncFile, '# Base directories'
  36.  Call LineOut sIncFile, '# Note! These should be absolute paths!'
  37.  Call LineOut sIncFile, '################################################################################'
  38.  Call LineOut sIncFile, ''
  39.  Call LineOut sIncFile, '!ifndef DEVTYPE'
  40.  Call LineOut sIncFile, '!error DEVTYPE not defined!'
  41.  Call LineOut sIncFile, '!endif'
  42.  sBase=directory();
  43.  Call LineOut sIncFile, ''
  44.  Call LineOut sIncFile, 'DRV_BASE        ='sBase
  45.  Call LineOut sIncFile, 'LX_BASE         =$(%LXAPI32DEV)'
  46.  Call LineOut sIncFile, ''
  47.  Call LineOut sIncFile, 'LX_MAINMAKE     =$(%LXAPI32DEV)\makes\mainmake.mak'
  48.  Call LineOut sIncFile, ''
  49.  Call WriteSubDir 'DRV_BIN'    ,'bin'
  50.  Call WriteSubDir 'DRV_INC'    ,'inc'
  51.  Call LineOut sIncFile, 'DRV_INCLUDE     =..\include;$(%LXAPI32DEV)\include'
  52.  Call WriteSubDir 'DRV_LIB'    ,'lib'
  53.  Call WriteSubDir 'DRV_MAKES'    ,'makes'
  54.  Call WriteSubDir 'DRV_TOOLS'    ,'tools'
  55.  Call WriteSubDir 'DRV_BTTV'    ,'bttv'
  56.  Call WriteSubDir 'DRV_LIB32'    ,'lib32'
  57.  Call WriteSubDir 'DRV_DEV32'    ,'dev32'
  58.  Call WriteSubDir 'DRV_LINUX'    ,'linux'
  59.  Call LineOut sIncFile, 'DRV_OBJ         =bin'
  60.  Call LineOut sIncFile, ''
  61.  Call LineOut sIncFile, '!ifeq DEVTYPE DEV32'
  62.  Call WriteSubDir 'DRV_SRC'    ,'dev32'
  63.  Call LineOut sIncFile, '!endif'
  64.  
  65.  Call LineOut sIncFile, ''
  66.  Call LineOut sIncFile, '!ifeq DEVTYPE LIB32'
  67.  Call WriteSubDir 'DRV_SRC'    ,'lib32'
  68.  Call LineOut sIncFile, '!endif'
  69.  
  70.  Call LineOut sIncFile, ''
  71.  Call LineOut sIncFile, '!ifeq DEVTYPE PCI'
  72.  Call WriteSubDir 'DRV_SRC'    ,'pci'
  73.  Call LineOut sIncFile, '!endif'
  74.  
  75.  Call LineOut sIncFile, ''
  76.  Call LineOut sIncFile, '!ifeq DEVTYPE I2C'
  77.  Call WriteSubDir 'DRV_SRC'    ,'i2c'
  78.  Call LineOut sIncFile, '!endif'
  79.  
  80.  Call LineOut sIncFile, ''
  81.  Call LineOut sIncFile, 'CM_TOOLS        =$(LX_BASE)\tools'
  82.  
  83.  Call Stream sIncFile, 'C', 'CLOSE';
  84.  
  85.  Call directory(sOldDir);
  86.  Say ''
  87.  Say 'Configuration completed!'
  88.  Say 'To build the LXAPI32 driver release version do:'
  89.  Say '   WMAKE /ms'
  90.  Say 'To build the LXAPI32 driver debug version do:'
  91.  Say '   WMAKE /ms DEBUG=1'
  92. End
  93. Else
  94. Do
  95.  Say 'oops, failed to open outputfile,' sIncFile;
  96.  Exit 1;
  97. End
  98. Exit 0;
  99.  
  100.  
  101.  
  102. /*****************/
  103. /* function area */
  104. /*****************/
  105. WriteSubDir: Procedure Expose sIncFile
  106.  M=Arg(1)
  107.  SubDir=Arg(2)
  108.  If SubDir='' Then
  109.  Do
  110.   SubDir=Right(M,Length(M)-5)
  111.  End
  112.  If Length(M) < 16 Then
  113.  Do
  114.   M=Left(M'                ',16)
  115.  End
  116.  SubDir=Translate(SubDir,'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')
  117.  Call LineOut sIncFile, M'=$(DRV_BASE)\'SubDir
  118. Return
  119.