|
1 # Copyright (C) 2005, Giovanni Bajo |
|
2 # Based on previous work under copyright (c) 2002 McMillan Enterprises, Inc. |
|
3 # |
|
4 # This library is free software; you can redistribute it and/or |
|
5 # modify it under the terms of the GNU Lesser General Public |
|
6 # License as published by the Free Software Foundation; either |
|
7 # version 2.1 of the License, or (at your option) any later version. |
|
8 # |
|
9 # This library is distributed in the hope that it will be useful, |
|
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|
12 # Lesser General Public License for more details. |
|
13 # |
|
14 # You should have received a copy of the GNU Lesser General Public |
|
15 # License along with this library; if not, write to the Free Software |
|
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA |
|
17 import carchive |
|
18 import sys |
|
19 import os |
|
20 |
|
21 this = carchive.CArchive(sys.executable) |
|
22 tk = this.openEmbedded('tk.pkg') |
|
23 targetdir = os.environ['_MEIPASS2'] |
|
24 for fnm in tk.contents(): |
|
25 stuff = tk.extract(fnm)[1] |
|
26 outnm = os.path.join(targetdir, fnm) |
|
27 dirnm = os.path.dirname(outnm) |
|
28 if not os.path.exists(dirnm): |
|
29 os.makedirs(dirnm) |
|
30 open(outnm, 'wb').write(stuff) |
|
31 tk = None |
|
32 |