More moves for Tool Packages
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1676 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
131
Tools/CCode/Source/SplitFile/SplitFile.c
Normal file
131
Tools/CCode/Source/SplitFile/SplitFile.c
Normal file
@ -0,0 +1,131 @@
|
||||
/*
|
||||
|
||||
Copyright (c) 1999-2006 Intel Corporation. All rights reserved
|
||||
This program and the accompanying materials are licensed and made available
|
||||
under the terms and conditions of the BSD License which accompanies this
|
||||
distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
*/
|
||||
|
||||
// GC_TODO: fix comment to start with /*++
|
||||
#include "stdio.h"
|
||||
#include "string.h"
|
||||
#include "stdlib.h"
|
||||
|
||||
void
|
||||
helpmsg (
|
||||
void
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
GC_TODO: Add function description
|
||||
|
||||
Arguments:
|
||||
|
||||
|
||||
Returns:
|
||||
|
||||
GC_TODO: add return values
|
||||
|
||||
--*/
|
||||
{
|
||||
printf (
|
||||
"SplitFile Filename Offset\n"" Filename = Input file to split\n"" Offset = offset at which to split file\n"
|
||||
"\n\n""SplitFile will break a file in two pieces at the requested offset\n"
|
||||
" outputting Filename1 and Filename2\n"
|
||||
);
|
||||
}
|
||||
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
char*argv[]
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
GC_TODO: Add function description
|
||||
|
||||
Arguments:
|
||||
|
||||
argc - GC_TODO: add argument description
|
||||
] - GC_TODO: add argument description
|
||||
|
||||
Returns:
|
||||
|
||||
GC_TODO: add return values
|
||||
|
||||
--*/
|
||||
{
|
||||
FILE *In;
|
||||
|
||||
FILE *Out1;
|
||||
|
||||
FILE *Out2;
|
||||
char OutName1[512];
|
||||
char OutName2[512];
|
||||
unsigned long Index;
|
||||
unsigned long splitpoint;
|
||||
char CharC;
|
||||
|
||||
if (argc != 3) {
|
||||
helpmsg ();
|
||||
return -1;
|
||||
}
|
||||
|
||||
In = fopen (argv[1], "rb");
|
||||
if (In == NULL) {
|
||||
printf ("Unable to open file \"%s\"\n", argv[1]);
|
||||
return -1;
|
||||
}
|
||||
|
||||
strncpy (OutName1, argv[1], 510);
|
||||
strncpy (OutName2, argv[1], 510);
|
||||
strcat (OutName1, "1");
|
||||
strcat (OutName2, "2");
|
||||
|
||||
Out1 = fopen (OutName1, "wb");
|
||||
if (Out1 == NULL) {
|
||||
printf ("Unable to open file \"%s\"\n", OutName1);
|
||||
return -1;
|
||||
}
|
||||
|
||||
Out2 = fopen (OutName2, "wb");
|
||||
if (Out2 == NULL) {
|
||||
printf ("Unable to open file \"%s\"\n", OutName2);
|
||||
return -1;
|
||||
}
|
||||
|
||||
splitpoint = atoi (argv[2]);
|
||||
|
||||
for (Index = 0; Index < splitpoint; Index++) {
|
||||
CharC = (char) fgetc (In);
|
||||
if (feof (In)) {
|
||||
break;
|
||||
}
|
||||
|
||||
fputc (CharC, Out1);
|
||||
}
|
||||
|
||||
for (;;) {
|
||||
CharC = (char) fgetc (In);
|
||||
if (feof (In)) {
|
||||
break;
|
||||
}
|
||||
|
||||
fputc (CharC, Out2);
|
||||
}
|
||||
|
||||
fclose (In);
|
||||
fclose (Out1);
|
||||
fclose (Out2);
|
||||
|
||||
return 0;
|
||||
}
|
69
Tools/CCode/Source/SplitFile/build.xml
Normal file
69
Tools/CCode/Source/SplitFile/build.xml
Normal file
@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!--
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
-->
|
||||
<project default="GenTool" basedir=".">
|
||||
<!--
|
||||
EDK SplitFile Tool
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
-->
|
||||
<property name="ToolName" value="SplitFile"/>
|
||||
<property name="FileSet" value="*.c"/>
|
||||
|
||||
<taskdef resource="cpptasks.tasks"/>
|
||||
<typedef resource="cpptasks.types"/>
|
||||
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
|
||||
|
||||
<property name="LINK_OUTPUT_TYPE" value="static"/>
|
||||
<property name="BUILD_DIR" value="${PACKAGE_DIR}/${ToolName}/tmp"/>
|
||||
|
||||
<target name="GenTool" depends="init, Tool">
|
||||
<echo message="The EDK Tool: ${ToolName} build has completed!"/>
|
||||
</target>
|
||||
|
||||
<target name="init">
|
||||
<echo message="Building the EDK Tool: ${ToolName}"/>
|
||||
<mkdir dir="${BUILD_DIR}"/>
|
||||
</target>
|
||||
|
||||
<target name="Tool" depends="init">
|
||||
<cc name="${ToolChain}" objdir="${BUILD_DIR}"
|
||||
outfile="${BIN_DIR}/${ToolName}"
|
||||
outtype="executable"
|
||||
optimize="speed"
|
||||
debug="true">
|
||||
|
||||
<fileset dir="${basedir}/${ToolName}"
|
||||
includes="${FileSet}"
|
||||
defaultexcludes="TRUE"
|
||||
excludes="*.xml *.inf"/>
|
||||
|
||||
<includepath path="${PACKAGE_DIR}/Include"/>
|
||||
<includepath path="${PACKAGE_DIR}/Include/Ia32"/>
|
||||
<includepath path="${PACKAGE_DIR}/Common"/>
|
||||
</cc>
|
||||
</target>
|
||||
|
||||
<target name="clean">
|
||||
<echo message="Removing Intermediate Files Only"/>
|
||||
<delete>
|
||||
<fileset dir="${BUILD_DIR}" includes="*.obj"/>
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
<target name="cleanall">
|
||||
<echo message="Removing Object Files and the Executable: ${ToolName}${ext_exe}"/>
|
||||
<delete failonerror="false" quiet="true" includeEmptyDirs="true">
|
||||
<fileset dir="${BUILD_DIR}"/>
|
||||
<fileset file="${BIN_DIR}/${ToolName}${ext_exe}"/>
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
</project>
|
Reference in New Issue
Block a user