Resync
[CMakeLuaTailorHgBridge.git] / CMakeLua / Source / CPack / cmCPackDragNDropGenerator.h
blob2d1405d4159a2425110c7aaf772614f681fdc0e3
1 /*=========================================================================
3 Program: CMake - Cross-Platform Makefile Generator
4 Module: $RCSfile: cmCPackDragNDropGenerator.h,v $
5 Language: C++
6 Date: $Date: 2009-02-20 15:14:40 $
7 Version: $Revision: 1.3 $
9 Copyright (c) 2002 Kitware, Inc. All rights reserved.
10 See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
12 This software is distributed WITHOUT ANY WARRANTY; without even
13 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14 PURPOSE. See the above copyright notices for more information.
16 =========================================================================*/
18 #ifndef cmCPackDragNDropGenerator_h
19 #define cmCPackDragNDropGenerator_h
21 #include "cmCPackGenerator.h"
23 /** \class cmCPackDragNDropGenerator
24 * \brief A generator for OSX drag-n-drop installs
26 class cmCPackDragNDropGenerator : public cmCPackGenerator
28 public:
29 cmCPackTypeMacro(cmCPackDragNDropGenerator, cmCPackGenerator);
31 cmCPackDragNDropGenerator();
32 virtual ~cmCPackDragNDropGenerator();
34 protected:
35 virtual int InitializeInternal();
36 virtual const char* GetOutputExtension();
37 int CompressFiles(const char* outFileName, const char* toplevel,
38 const std::vector<std::string>& files);
40 bool CopyFile(cmOStringStream& source, cmOStringStream& target);
41 bool RunCommand(cmOStringStream& command, std::string* output = 0);
43 virtual int CreateDMG(const std::string& installdir,
44 const std::string& outdmg);
46 std::string InstallPrefix;
49 #endif