Welcome to the Tiny Core Linux Wiki at tinycorelinux.net!

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

wiki:creating_extensions [2017/06/02 07:14]
JustinCB updated some of the information for recent versions of tinycore
wiki:creating_extensions [2017/09/27 06:52] (current)
JustinCB
Line 106: Line 106:
 </code> </code>
  
-Note: "-j3" is meant for a 2 processor system.  The general guideline is -jN where N is 1 more than the total number of processors available, unless you are on a system that supports hyperthreading(which means that the each of the physical processors acts like 2 virtual processors[because the processor does multitasking and so can run 2 processes "at once"]).  If your system uses hyperthreading, use the number of physical plus the number of virtual processors.  +Note: "-j3" is meant for a 2 processor system.  The general guideline is -jN where N is 1 more than the total number of processors available, unless you are on a system that supports hyperthreading(which means that the each of the physical processors acts like 2 virtual processors[because the processor does multitasking and so can run 2 processes "at once"]).  If your system uses hyperthreading, use the number of physical plus the number of virtual processors(usually twice the physical processors).  
  
 Create/update a date marker just in case your app doesn't support DESTDIR: Create/update a date marker just in case your app doesn't support DESTDIR:
Line 130: Line 130:
 ===== All extension creators please note =====  ===== All extension creators please note ===== 
  
-If you don't need a startup script, then skip the next section. The TC system will create empty tce.installed/package_name files. You can ask for help IRC or on the tce Q&A if you are having issues getting your script working ok.  You may wish to see how others have done it, for x86 see http://www.tinycorelinux.net/8.x/x86/tcz/src/ or whatever version you have(If you have a newer or older version, replace 8.x with the version you have).  +If you don't need a startup script, then skip the next section. The TC system will create empty tce.installed/package_name files. You can ask for help IRC or on the tce Q&A if you are having issues getting your script working OK.  You may wish to see how others have done it, for x86 see http://www.tinycorelinux.net/8.x/x86/tcz/src/ or whatever version you have(If you have a newer or older version, replace 8.x with the version you have and/or x86 with your architecture).  
  
 == gutmensch provides the following set of rules: == == gutmensch provides the following set of rules: ==
Line 268: Line 268:
 It is easy to leave out a required dependency from your .dep file. Do use base norestore, and check the dependencies in particular.   It is easy to leave out a required dependency from your .dep file. Do use base norestore, and check the dependencies in particular.  
  
-If you are planning on submitting your extension for inclusion in the repository,  you should run the extension auditing script, which is in the repository as submitqcx.tcz(replace x with the version number of your system, but note that a new submitqcx.tcz extension does not always come out right away when a new version of tinycore, so you might need to use the previous version when a new version has just been released).  submitqc.tcz is a script that does more robust checking, but almost always throws many more warnings/errors submitqc.tcz is the ONLY extension audit script for picore and corepure64(as the submitqcx.tcz extensions are[currently] x86 only).   +If you are planning on submitting your extension for inclusion in the repository,  you should run the extension auditing script, which is in the repository as  submitqc.tcz .
 =====  Separation =====   =====  Separation =====  
  
Line 276: Line 275:
   * move documentation and help files into a doc extension (myprogram-doc.tcz)      * move documentation and help files into a doc extension (myprogram-doc.tcz)   
   * rather than including docs in your extension, use the info file to list official online docs.     * rather than including docs in your extension, use the info file to list official online docs.  
 +  * move headers and static libraries to a dev extension(myprogram-dev.tcz)
  
 ===== Required Files =====   ===== Required Files =====  
Line 283: Line 283:
   * a list of its contents (.tcz.list)    * a list of its contents (.tcz.list) 
   * an md5 sum (.tcz.md5.txt)    * an md5 sum (.tcz.md5.txt) 
-  * an info file describing its contents (.tcz.info) - this content is standardized. [[http://distro.ibiblio.org/tinycorelinux/8.x/x86/tcz/|Visit the repository for examples]](The link is to the 8.x repository.  If you have a different version, follow the link, and then replace 8.x with whatever version you have[but only the major release eg. 7.x 9.x, not the minor release eg. 8.0, 7.2]).  +  * an info file describing its contents (.tcz.info) - this content is standardized. [[http://distro.ibiblio.org/tinycorelinux/8.x/x86/tcz/|Visit the repository for examples]](The link is to the 8.x repository.  If you have a different version, follow the link, and then replace 8.x with whatever version you have[but only the major release eg. 7.x 9.x, not the minor release eg. 8.0, 7.2]). Also see the example below.
   * a dependency list, if necessary (.tcz.dep)    * a dependency list, if necessary (.tcz.dep) 
   * If the source is under the GPL license, include the source as well.     * If the source is under the GPL license, include the source as well.  
-  * a .tcz.zsync (autogenerated with submitqcx[where x is the major release of tinycore linux you have.  A new version might not get a new submitqc right away.  If there isn't one for the current version, use the previous version], or submitqc)  +  * a .tcz.zsync (autogenerated by submitqc)
  
 It is not required, but certainly recommended, that you include any additional build instructions in a plain text file for future reference, mentioning such things as which extensions are required to build the package and what compile flags were used. This can be done in a file named "build-dep". For example, the build-dep file for urxvt looks like this:  It is not required, but certainly recommended, that you include any additional build instructions in a plain text file for future reference, mentioning such things as which extensions are required to build the package and what compile flags were used. This can be done in a file named "build-dep". For example, the build-dep file for urxvt looks like this: 
Print/export